11-25-2009 11:38 PM - edited 11-25-2009 11:46 PM
Original:
I would like to ask a technique to communicate with a application built by labview.
The application distributed by a commerical company is a stand-alone and seems to have a event loop(consumer and producer) for user interface.
The company distributed some labview DLLs for developer but I like the stand-alone for monitoring and controlling.
Anyway, is it possible to control the stand-alone application(.exe) from my program?
(Here, I have to notify my program is a stand-alone exe too.)
I want only to adjust some input parameters on the front panel application from the "separate" program (user program).
Under assuming event structure, what do I ask to the company for this purpose? ActiveX, name of global variable, or more simpler way?
I think there is a simple way to do this, but I have no idea clearly.
labmaster
11-26-2009 07:41 AM
Hi
There are multiple ways of controlling an application from another. ActiveX is one, VI server is another, but they require that both applications are built for it, which does not seem to be the case for you. You could use the System Exec VI to open the VI and set some parameters (if the other application accepts command line arguments). So it all comes down to if the other application has some kind of API implemented. Do you have any documentation on the VI or even better access to the source code?
Best Regards
David
NISW
11-26-2009 01:16 PM
The stand-alone program should be run all the time to control my instrument.
That't means I have to change the input parameter during execution as well as startup.
(That's the reason why I mentioned event-based structure.)
I have no any information about this but I want to propose new thing to the company.
I am curious if I can drive some event to the stand-alone program from my separate program?
labmaster.
11-26-2009 01:54 PM
You can't possibly know what architecture is used unless you have access to the source code and in any case, the internal architecture is totally irrelevant to being able to control the front panel of an exe. It makes no difference whether an event structure exists or not. Maybe you've never created an exe in all the years you've been using LabVIEW?
What's important is what sort of exteranl interface the creator of the exe has exposed. Same as any external application in any other language, you need to find that out. The easiest for you is if the ActiveX/VI Server interface has been enabled. Then you can use the set/get control value methods.