Creating LabVIEW executables & installers

Hello all,
I am trying to create an executable & installer for an application as described in http://zone.ni.com/devzone/cda/tut/p/id/5406. I am having issues with both. I'd appreciate some pointers.
1. EXE: I have attached a zip folder here called "exe screen shots 1" with screen shots of the error. The errors is related to the HWS drivers on the target machine. The application runs fine on the host computer. I have installed the 821 run time engine from ni.com on the target. I have also tried placing the instr.lib/nihws.llb at the same location as host machine but to no avail. Is there a specific place for lvrt.dll?
2. Installer: Screenshots of the build errors are attached. Message indicates a "Windows SDK Function" returned an error. The installer build never completes. The path for HSDIO and Runtime engine are valid.
Thanks,
-Ram. 
Solved!
Go to Solution.
Attachments:
Installer errror log.zip ‏182 KB
exe error shots1.zip ‏148 KB

Hello Ram,
regarding your need to install NI HWS on the target computer.
NI HWS is distributed with NI-HSDIO, but also supports a feature in LabVIEW, which allows you to create a custom, application specific installer distribution. This feature is accessable from the LabVIEW project build specification when creating application specific installers.
To do this 'right click' on 'Build Specifications', and select New>>Installer. Under 'Category' select 'Additional Installers', you already find the LabVIEW Run-Time Engine selected. Additionally select 'NI Hierachical Waveform Storage'.
Using these steps, I created a custom installer of ~300MB, which should install all the required NI HWS binaries as well as the LabVIEW 8.2.1 Run-Time Engine onto your target computer.
Regards,
Marian

Similar Messages

  • Creating LabVIEW Executable for sub-20 Multi Interface USB Adapter

    Hi
    I'm using Sub-20 Multi Interface USB Adapter (www.xdimax.com) for GPIO and SPI. The code is based on .NET constructor Node. I can access the device and perform all the tasks but I'm unable to generate executable.
    The application comes up with this error (on any machine including the development machine)
    "This VI is not executable. The Full development version of LabVIEW is required to fix errors"
    I'm using labVIEW 8.2 and .NET Framework 4 is also installed.
    Thanks

    Hi AA76,
    That is good to know, at least we know the cause of the error.  The KB - How LabVIEW Locates .NET Assemblies shows the LabVIEW search directories.  I suspect what is probably happening in this case is the relative path.  If the system is looking for the same relative path this is probably different. You say that even on the development machine the .exe does not load the library.  Is this when you have just created the .exe or after running the installer?  If it is after running the installer what about before you build the installer?
    Finally where is the assembly located?
    Regards,
    James
    James Mc
    ========
    CLA and cRIO Fanatic
    wiresmithtech.com/blog

  • LabView Executable files

    I had a question about LabView executables files- (one of the main differences between LabView Full and LabView Professional).  If I am able to create LabView executables (LabView Pro), then I would be able to run LabView programs (executable files) on PCs that do not have LabView installed?  If I use LabView Full (no executables created), then I can only run LabView files from PCs that have LabView installed?
    Thanks,
    Alex

    Charles_CLD wrote:
    As a long time user of LabVIEW and someone who is not in any financial way affiliated with National Instruments, I would highly recommend the Developer Suite over the Pro version. I believe the cost to benefit ratio to be VERY high.
    Charles
    I agree completely. Besides, once you add one or two of the essential toolkits to the pro version you are at about the same price as the developer suite.
    Mark Yedinak
    "Does anyone know where the love of God goes when the waves turn the minutes to hours?"
    Wreck of the Edmund Fitzgerald - Gordon Lightfoot

  • Bug Labview RT 8.20 with NotFoundDialog.vi and GeneralErrorHandler.vi when creating an executable

    Hi,
    I've got a problem with Labview RT 8.20 french edition.
    During my development, I had 2 warnings concerning NotFoundDialog.vi and GeneralErrorHandler.vi. But when I've tried to create an executable, these warning prevent its creation by generating an error.
    So I've modified theses vis in order to be able to compile my executable.
    1.    For GeneralErrorHandler.vi the problem is in a conditional disable structure in which there is a case named TARGET_TYPE==RT.
    It seems that this parameter is not equal to RT or doesn't exist. So I've created my own parameter and change the case.
    2.    For NotFoundDialog.vi the problem is upon a FindErrorDescription.html which is not available in RT target. So I uses the same conditional disable structure to disable this part of code when running under RT system.
    I hope this will help if anyone meet the same problem.
    James

    Hi
    I have a similar problem, however it is under the debug mode. I have a project which uses a Host under windows, RT target and then a FPGA target. Everytime the RT is deployed, it will ask whether I would like to save the mentioned files even though there is no modifications to them directly. The same case applies if the  host is modified under windows and it will prompt for the same.
    I understand that these VI's have no use in RT but, they are being recompiled through some sub VI. It is more of an annoyance than a show stopper. Thanks for the fix.
    Regards,
    Ashm01
    Message Edited by ashm01 on 03-19-2007 02:26 AM

  • Best way to create a Windows service from a LabVIEW executable​?

    What would be the best way to run a LabVIEW executable as a service? I needed this recently and I think I have set up such a service using srvany.exe from the Windows 2003 Resource Kit, but that seems like a bit of a hack. The Kit is not offically supported in Server 2008, but seems to work. I don't know about Server 2012 or beyond.
    So what would be the "proper" way of going about creating a Windows service from a headless LabVIEW application?

    The proper way is to interface to the according Windows service control API. That is however not a trivial task to do. We used to sell a LabVIEW toolkit which supported a full interface to this, but it's not currently actively marketed.
    srvany.exe is sort of a hack but works reasonably well for most use cases, as long as you do not need any further interaction with the service manager interface in Windows than to start and stop your service.
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Error when i create an executable in lv 2010

    HI everybody!!
    well i am creating an executable from one programa i have done, but when i am building it appears an error that i don't know what must i do to resolve it...
    can someone help me please¿
    thanks!!!!
    i need your help!!!is quite important pleaseeeeeeee!!!!!!
    error say this:
    This build specification uses VIs from Point by Point which is currently in evaluation mode. During evaluation, LabVIEW is unable to disconnect type definitions and remove unused polymorphic VI instances.
    Choose a different option on the Additional Exclusions page and build the application again.
    DETAILS
    To purchase this product, please contact National Instruments. If you have already purchased this product, select Help >> Activate LabVIEW Components to activate this product.
    C:\Archivos de programa\National Instruments\LabVIEW 2010\vi.lib\ptbypt\Filters.llb\IIR Cascade Filter PtByPt.vi
    Visit the Request Support page at ni.com/ask to learn more about resolving this problem. Use the following information as a reference:
    Error 1073 occurred at AB_Engine_Disconnect_Typedefs.vi -> AB_Source_VI.lvclass:Copy_SourceItem.vi -> AB_Build.lvclass:Copy_Files.vi -> AB_Application.lvclass:Copy_Files.vi -> AB_EXE.lvclass:Copy_Files.vi -> AB_Build.lvclass:Build.vi -> AB_Application.lvclass:Build.vi -> AB_EXE.lvclass:Build.vi -> AB_Build.lvclass:Build_from_Wizard.vi -> AB_UI_Frmwk_Build.lvclass:Build.vi -> AB_UI_FRAMEWORK.vi -> AB_Create_Build_Application.vi -> EBUIP_Global_OnCommand.vi -> EBUIP_Global_OnCommand.vi.ProxyCaller
    Possible reason(s):
    LabVIEW:  This property is writable only when the VI is in edit mode, or this method is available only when the VI is in edit mode.

    alan4 wrote:
    but now i have the executable , when i run it in another computer, ask me for a librarys, and why happens this??
    make me questions for the location of some lbb....why??
    How do you expect us to be able to answer this question? We have no idea what your code does, nor have you told us what the code does, or what components you are using. We are not mind readers. Are you talking to instruments? If so, the target machine would need NI-VISA if you're using VISA. Are you using DAQ? If so, then the target machine needs to have DAQmx installed. Create an installer from the project so that all necessary components are installed. Please read the LabVIEW Help on creating installers.

  • Improving load times in Linux LabVIEW executable

    I'm looking for (simple) ways to improve the loading times in a Linux LabVIEW executable. We're using a low performance, low cost CPU board, and loading times are terrible. The CPU is capable of doing everything after the application is loaded, but takes forever to get there.
    One of the problems is the size of the executable, that grows everytime you just look at it. Are there ways to create smaller executables? It runs from a Compact Flash card, which is ofcourse much slower than hard disk.
    Another problem is a dynamic vi, that is started for every TCP connection that connects to the application. It takes a long time to load, and connecting too fast can even effectively hang up the system. Starting a handler task takes about half a second, up to a few seconds for the first task.
    We're using the LabVIEW 7.1 runtime, system is a 300 MHz cyrix SBC, running from a Compact Flash.

    Dennisvr wrote:
    I'm looking for
    (simple) ways to improve the loading times in a Linux LabVIEW
    executable. We're using a low performance, low cost CPU board, and
    loading times are terrible. The CPU is capable of doing everything
    after the application is loaded, but takes forever to get there.   One
    of the problems is the size of the executable, that grows everytime you
    just look at it. Are there ways to create smaller executables? It runs
    from a Compact Flash card, which is ofcourse much slower than hard disk.   Another
    problem is a dynamic vi, that is started for every TCP connection that
    connects to the application. It takes a long time to load, and
    connecting too fast can even effectively hang up the system. Starting a
    handler task takes about half a second, up to a few seconds for the
    first task.   We're using the LabVIEW 7.1 runtime, system is a 300 MHz cyrix SBC, running from a Compact Flash.
    I'm
    not sure about the first part of your question. LabVIEW is highly
    binary and does a lot of memory allocations before even one VI is ready
    to be started. So maybe the memory manager is a problem. Another issue
    is that the Macintosh like resource file format that is used by LabVIEW to store its VIs etc. results in
    lots and lots of individual disk accesses with a rther random like
    character inside a single file. So if you can configure the read
    caching of your disk to use more memory this may significantly increase
    the speed of loading LabVIEW VIs or applications.
    And finally spawning VIs through VI server is a rather costly operation
    especially on low resoruce systems. A VI is more like an executable in
    many ways as far as resource consumption is concerned rather than a
    thread. A much better way would be to avoid spawning subVIs altogether
    and implement a queued TCP/IP server similar to the Date Time Server
    example. It is a little extra work to work with this shift register
    architecture but it will not have the issues of long load times for
    every new TCP/IP connection coming in.
    Rolf Kalbermatter
    Message Edited by rolfk on 03-07-2006 06:33 PM
    Rolf Kalbermatter
    CIT Engineering Netherlands
    a division of Test & Measurement Solutions

  • Is it possible to call a VI that is inside a LabVIEW executable from a TestStand sequence?

    I have created a custom TestStand operator interface and have modified the default sequential process model to display a UUT information dialog that prompts for more information than just the UUT serial number.  This UUT information dialog is a LabVIEW VI.  To distribute the operator interface, I build it into an executable.  As part of the build process, I make a copy of the UUT information dialog VI (which is part of my operator interface project) and place it in the same folder as the executable.  I have then configured the sequential process model to call the dialog VI from this location.  It would be really nice if I could embed the UUT information dialog VI inside the operator interface executable so that I could distribute just an executable instead of an executable and separate VIs.  Is this possible?  In other words, is it possible to call a VI that is inside a LabVIEW executable from a TestStand sequence just like a standard LabVIEW VI call?

    Ryan,
    The dialog that you've created isn't being directly called by the OI at all and shouldn't need to be included in the same directory as the OI for distribution. Since you are modifying the PreUUT of the default process model, you will give the path to the VI in that step, create a deployment and then manually copy the VI to the directory referenced in the step. The VI is considered a support file for the process model and is not related to the OI at all.
    Test Engineer - CTA

  • How can I call a LabVIEW executable from within another LabVIEW executable?

    I have a customer requirement for two LabVIEW executables. Based on their current setup, they need to run executable "A" or "B", both of which are under independent revision control. I have created a third "selection" executable that allows the operator to choose between one of the two, but I am receiving errors when I attempt to call a LabVIEW executable from within a LabVIEW executable using either the "System exec" VI or the "Run Application" VI. If I call a non-LabVIEW executable (such as Windows Explorer) everything works fine.

    > I have a customer requirement for two LabVIEW executables. Based on
    > their current setup, they need to run executable "A" or "B", both of
    > which are under independent revision control. I have created a third
    > "selection" executable that allows the operator to choose between one
    > of the two, but I am receiving errors when I attempt to call a LabVIEW
    > executable from within a LabVIEW executable using either the "System
    > exec" VI or the "Run Application" VI. If I call a non-LabVIEW
    > executable (such as Windows Explorer) everything works fine.
    As with the other poster, I suspect a path problem. You might try the
    path out in a shell window, and if it works, copy the complete absolute
    path to LV to see if that works. LV is basically passing the comma
    nd to
    the OS and doesn't even know what is in it, so you should be able to get
    it to work.
    The other poster commented on subpanels, which is a good suggestion, but
    without going to LV7, an EXE can have open more than one VI. You can
    use the VI Server and the Run method to fire up another top-level VI.
    The decision is whether you want both to be in unique processes.
    Greg McKaskle

  • Control where a LabVIEW executable write it's Settings Configuration file

    Is there any way to control which directory a LabVIEW executable writes it's configuration settings file to? I am using version 7.1.

    I believe the INI file must be in the same directory as the executable. You can use the keys found in the LabVIEW.ini file and they will apply to your executable without any special programming on your part. That being said, you can always create a custom settings file or files anywhere you like to store configuration information specific to your application.
    If we could specify some other path for the executable settings file, it would probably hurt more than help in the long run. The same directory as the executable is the only one whose existance you can be sure of..... or of whose existance you can be sure.
    Dan Press
    PrimeTest Corp.
    www.primetest.com

  • How do I create an executable with arguments that executes once and terminates

    I'm just starting with LabView, so I'm sure this issue has been address somewhere already.  I just can't locate the answer.
    I am running version 6i (I may be able to get 7 or 8).
    I need to create a command line executable program with parameter input that executes only once and then terminates.
    This is for instrument control (sets the signal generator frequency, level, RF on/off and arms the Trigger).  I have written a simple VI that works from within LabView (programs the instrument when the Run button is pressed).  I have further managed to perform an Application Build to create an executable however, the application continues to run, waiting for the Run button to be pressed.  Also, I need to know how to pass parameters to this executable (freq, level, RF on/off, trigger arm).
    This executable will (eventually) be called repeatedly by a Matlab file.
    Thanks,
    D

    LabVIEW 7 added a property to get a command line argument. For older versions see http://sine.ni.com/apps/we/niepd_web_display.display_epd4?p_guid=B45EACE3DA5B56A4E034080020E74861.
    I'm not sure I understand you problem with the Run button. If you set the execution mode to Run When Opened from VI Properties, it should execute once whenever it's called. I think that when building an executable, it changes the property to this if it's not already set. If the application does not have this set, it will not be running at all. I'm assuming that you are talking about the Run button on the toolbar and not a run Boolean that you've created on the front panel.
    Since you have the app builder, your other option is to create a DLL. If you can call a DLL in Matlab, then that would probably be simpler.
    Message Edited by Dennis Knutson on 11-28-2005 02:46 PM

  • How do I create an executable for a computer that does not have IVI drivers

    I'm creating an executable driver (based on the NI drivers) for a TDS 3054 intended for a computer that does not have the IVI engine. I would prefer to install as little software on this computer as possible. Is it possible for me to build the driver with the appropriate support DLL's without installing IVI on the user's computer? How do I do this?
    Thank you,
    Zach Oberman

    Zach,
    Since the tkds30xx driver you are using is IVI based, you will not be able to use it without the IVI Engine.
    If you must build an executable that does not require the IVI Engine, then you will need to use a traditional LabVIEW driver or convert a VXIpnp driver into LabVIEW. Neither of those drivers would require the IVI Engine.
    At this time the only TDS 3054 driver on NI's IDNet website is the IVI-based tkds30xx driver.
    You may be able to obtain a traditional LabVIEW driver from
    Tektronix
    Developer Exchange
    Requesting a
    driver
    Other Resources
    Thanks,
    --Bankim

  • Labview executable does not open excel...

    i just compiled labview code into an executable and when i run the executable, it does not open an excel document like it is supposed to.  it opens the excel program, but not the specific file stipulated in the code. the problem only exists on one of my computers.  the "problem computer" is being set up for the first time to run labview executables.
    thanks in advance for the help.
    Erik

    That is probably the reason.  Microsoft is notorious for the way they change their activeX components between office versions.
    At the minimum, you need to install the LabVIEW runtime engine on the other PC.  It needs to be the same version as the version of LabVIEW you developed in.  You can either search the NI website and download and install the run-time engine, or you can create an installer for your application from the development PC that will include the run-time engine.
    You may need some other run-time engines such as VISA or DAQmx if your application is using any of those functions.

  • Labview Executable with VISA functions in Run Time Engine

    Hi Everybody
    I designed a gui to communicate using VISA GPIB. I created an executable for the gui. I also installed LabView Run Time Engine on the desired machine. I recieved couple of errors, for which I copied the files visa32.dll, NIVISV32.dll and serpdrv to the folder with the executable.
    I recieved the following error, ' Initialization of NIVISV32.dll failed. The process interminating abnormally.'
    Are there any drivers I should install in addition to the Run Time Engine? If so, where can I find these drivers?
    Thank you
    Jackie

    I installed NI-VISA with similar version as my development installation, and LV runtime engine. Labview still crashed.
    I noticed certain library functions in full labview that is not present in the NI-VISA + LV run time directory, such as _visa.llb etc.
    Do I need to copy these additional library functions too? Will Run Time Engine read these library functions?

  • How to start a LabVIEW executable programmatically.

    I created a LabVIEW executable and want to start it programatically from another PC.
    I know how to start LabVIEW remotely but not how to handle an application.

    If you have NT/Win2k machine, then you can launch labview built exe using DCOM. Here is example that tells you how to do that.
    http://zone.ni.com/devzone/devzoneweb.nsf/opendoc?openagent&9208517E41C2B1B18625683A000CB86E&cat=9C6DF90777E5A78206256874000FA14E
    Another one
    http://zone.ni.com/devzone/devzoneweb.nsf/opendoc?openagent&20346814BACE06BF8625683A000C3C98&cat=46E7994B7483D781862567C300662667
    A Rafiq

Maybe you are looking for