LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Remote panel behavior in built application differs from development app

I frequently use the control.disabled property nodes to control how a user interacts with a GUI. It is crucial my application runs well via remote panels. I was delighted that these control properties (visible, disabled, etc) work in a remote panel, but built applications do not work properly. Specifically, upon launching a remote panel, the disabled status of controls on the server panel do not match the status of the same controls on the remote panel. The status does change properly, however, if the server changes a control property programmatically. So it seems like this is a panel initialization problem. All of this works fine in my development version, what's going on?
0 Kudos
Message 1 of 3
(2,697 Views)
Hi Crain,

This is a known issue with executables and remote panels. The reason why your VI (development version) works fine is because when a client requests an image from LabVIEW, LabVIEW saves the current image of the VI in memory and sends it out i.e. the client gets the most recent version. However, in the executable the client receives an image from the disk i.e. if the application has already been running and a new remote panel is started, the client will be out of sync with the image of the remote application.

I hope this explains what is going on.

As for the workaround, here's what you can try:

Use the application property node called 'Remote Panel:Connections To Clients Property'. This property returns an array of clusters containing con
nection information about the clients currently connected to the computer. You can poll this array to see if the size of this array changes (increases) i.e. a new connection was established. When a new connection gets establish, you can set the properties of the controls on your front panel programmatically to their current state. This is just to let the remote panel know what the current state of the controls are. This may work since you mentioned that the status of a control does change properly if the server changes the control's property programmatically.

Please try this and let me know how it goes.

Sincerely,
Feroz
National Instruments
Message 2 of 3
(2,697 Views)
Works great! Thanks.
0 Kudos
Message 3 of 3
(2,697 Views)