LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Why won't exe run over vi server when VIs will?

Hello,

 

I have a "Server" which I intend to run on a locat machine at my desk.  It's function is to simply gather messages in a text box from multiple clients.  I'm using the VI Server method.  The VIs work but when I build them there is no communication.  On "My Computer" I checked "TCP/IP" and set the port to 3368, I currently have another server on 3363.

 

I can't figure out what my issue is.  I have rebuilt the client exe many times with various inputs (using static ip for the machine name setting, then using the service name for port number and service name, and the port 3368).  These various builds were not successful.

 

I think I have gone through the appropriate steps to attempt to correct the issue but I can't solve it.

0 Kudos
Message 1 of 7
(2,531 Views)

I forgot to mention that I am on LV 8.6.1 and i have read in the known issues that not all necessary items are added to the .ini file.  A snippet on my ini file is below.

 

[Client Messages]
server.app.propertiesEnabled=True
server.tcp.acl="290000000A000000010000001D00000003000000010000002A10000000030000000000010000000000"
server.tcp.port=3368
server.tcp.serviceName="DLLs.LabVIEW.Message.test.com"
server.vi.access="+*"
server.vi.propertiesEnabled=True

0 Kudos
Message 2 of 7
(2,529 Views)

Do you have the project open when running the EXE? Only one server can be active on a port at any time. So if your project already listens on port 3368 your exe can't.

Also, in your ini file I'm missing one key:

server.tcp.enabled=True

 

0 Kudos
Message 3 of 7
(2,522 Views)

The "Server" side is simply a vi.  I would like the client to be the executable.

 

I added server.tcp.enabled=True.

 

I shut down the project and opened server.vi but the client exe will still not write to it.

0 Kudos
Message 4 of 7
(2,519 Views)

If the client is an EXE you don't need to enable VI Server for it. This can cause problems because of the port being in use by the VI. The client exe can basically have an empty ini file (just the section name in the first line is sufficient).

Did you specify the machine name to connect to in the exe? If the client exe and the server are on the same machine use localhost or 127.0.0.1 or the hostname. Leaving it empty will not work because this will return an application reference to the current application instance (in this case the exe itself) no matter what port you specify.

 

 

0 Kudos
Message 5 of 7
(2,514 Views)

the client exe will be deployed to multiple users across the network

0 Kudos
Message 6 of 7
(2,510 Views)
Well then the machine name to use is the ip address or hostname of the pc the server runs on.
0 Kudos
Message 7 of 7
(2,505 Views)