07-21-2005 07:28 AM
07-21-2005 08:10 AM
Preben,
I'm a little confused about your problem, are you having trouble creating a LabVIEW DLL, or are you having trouble embedding your ActiveX control in LabVIEW? In order to embed an ActiveX control, you generally don't use a Call Library Function (CLFs are more useful for non-ActiveX DLLs). LabVIEW actually has an ActiveX container, which you can find on your controls palette. Place one of these containers on your front panel, then right click it and select Insert ActiveX Object. Browse to your ActiveX DLL, and if everything is implemented correctly, the ActiveX object should be displayed in the container. Once you have done this, you can use the terminal for the container on the block diagram as a reference to the object, you can wire it to property and invoke nodes to access properties and methods of your ActiveX object.
Hope that helps,
Ryan K.
07-21-2005 08:42 AM
07-21-2005 09:29 AM
Preben,
Unfortunately, what you are trying to do is somewhat contrary to the way in which ActiveX controls operate. When you embed an ActiveX control in a user inteface (which could be a front panel, a web page, a CVI UI, or a dialog or form from Visual Studio) the program controlling that user interface is the only program that has a reference to that control. You could try passing this reference to LabVIEW as a parameter, but passing references from one language to another often gets hairy. I've never tried this approach personally, but it might be worth a shot. If that doesn't work, then your options are either to use LabVIEW as the front end user interface (i.e. embed your front panel in the web page) or to build a communication scheme between LabVIEW and the web page by passing messages with something like TCP/IP and then executing the apropriate commands in whatever scripting language you're using behind the web page.
07-21-2005 01:13 PM
Ok thanks Ryen.. When you use remote panel , do every user have to "share" the same vi on the server or do all clients get their own labview front window?`Is it possible to embed Labview vi-s in web pages without using the remote panel technique? If so, how do you do that?
Preben....
07-21-2005 02:36 PM
Preben,
You do, unfortunately, share the VI among different executions. Therefore only one user has control of the application at any given time. This might not work for your application. I'd start by trying to pass the reference, if that doesn't work then go from there.
Regards,
Ryan K.
07-22-2005 03:48 AM
OK, but has this reference something to do with the refnum specified in the Labview wiring-diagram?
Preben
07-22-2005 08:06 AM
Kind of, the eventual idea is that you'll get it into a LabVIEW refnum and then you can use it to call properties and methods. The difficulty would arise if the refnum is represented differently in IE or in whatever scrpiting language you're using than it is in LabVIEW.
The first thing to try would be to just pass it directly from the script which is calling LabVIEW as a parameter.