LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

create distribution of .cds via command line

Solved!
Go to solution

Hello,

 

i was lucky to find the command line tool to create the output of my LabWindows/CVI Project. (compile.exe)

This works only for the project *.prj. Now i need a command line tool to create the distribution package *.cds.

 

Is there a tool for it? How can i create the distribution package from a *.cds without using the LabWindows/CVI GUI?

 

0 Kudos
Message 1 of 9
(3,274 Views)

Is it an option to create everything on another computer and after you've created the distribution kit to put it on the computer that only has a command line interface?

0 Kudos
Message 2 of 9
(3,271 Views)
Solution
Accepted by K.Werner

Perhaps write your own command line tool using activeX-interface of CVI? refer to http://zone.ni.com/devzone/cda/tut/p/id/3212

 

Peter

0 Kudos
Message 3 of 9
(3,266 Views)

There is a problem when creating the distrikit failed.

To cancel the build the CVI GUI needs a user interaction to return from the function "CVI_AppCreateDistributionKit".

How can i handle this?

0 Kudos
Message 4 of 9
(3,254 Views)

What is the user interaction? Can you paste the window here?

 

Thanks,

Luis

0 Kudos
Message 5 of 9
(3,235 Views)

The user action is required when an installation component can not be found.

 

The problem is described here:

http://forums.ni.com/t5/LabWindows-CVI/Missing-installer-component-NI-VISA-Runtime/td-p/1560962

0 Kudos
Message 6 of 9
(3,231 Views)

So, the root problem is that the VISA runtime cannot be found, right? If so, then this prompt is unfortunately necessary, even in a programmatic build, since the operation cannot continue without additional user interaction.

 

Are you still having the same problem with VISA that you described in the other forum thread? Do you get the same prompt each time that you try to build the distribution, whether you do it in the CVI ADE or you do it using the ActiveX interface?

 

Luis

0 Kudos
Message 7 of 9
(3,206 Views)

We still have the problem described in the other forum thread.

I get the same promt each time i try to build the distribution with the CVI environment or the ActiveX Interface.

We dont know what we have done that the VISA runtime can not be found on two of our computers. This is the olny error where the build of the distribution can not be aborted without an user interaction.

 

Is it possible to set a timeout via the ActiveX Interface to kill the building process?

0 Kudos
Message 8 of 9
(3,199 Views)

Okay, someone will try to help you with the original problem. That other forum thread looks abandoned, but I asked a co-worker to post some suggestions there. Please look for it.

 

Meanwhile, as far as the ActiveX interface is concerned, there is unfortunately no graceful way to work around that dialog. But there are a couple of things you can try to implement your own timeout:

 

You could start an asynchronous timer just before you call the distribution build operation, and give it a specific timer interval. When the build operation returns, you would then discard the timer, such that it will never fire an event. But if the timer does send an event (it will send it in a separate thread), that means that the build operation was taking too long, in which case you can try to kill it in the timer callback. To kill CVI, you can simply call TerminateProcess with a process id which you can get from the GetCVIProcessId ActiveX interface function. This should cause the Build function to return with some COM error.

If killing the CVI process is too drastic for you, you can try calling the ExitCVI ActiveX interface instead. I didn't try this myself, but it might allow CVI to exit more gracefully (I'm not completely sure, because the Exit command would be nested inside the user prompt that is being displayed). I'm also not sure how the Build function will actually return. You can test it and find out.

 

Luis

0 Kudos
Message 9 of 9
(3,181 Views)