From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Error when running ethernet modbus slave demon in an executable

Solved!
Go to solution

I've written an application that incorporates a modbus ethernet slave - similar to the one included in the LabView examples (2013). If I run this as a VI then there is no problem. However, if I create an executable then I get an error message about the slave demon version 8.6 being too old to convert to version 2013. I'm using NI Modbus Library 1.2.1 and the 86 folder.

 

To isolate the modbus issue from my original application I've taken the LabView MB Ethernet slave example (2013) and created a project which includes the slave demon vi and the modbus 8.6 vi.lib. I've modified the path to the slave demon in the slave example so that it points to the location of the slave demon vi in my project. If I build the application and run it  I get a slightly different error - "the slave demon vi is not executable".

 

I don't understand why the slave demon won't execute in an exe program but will within a VI.

 

 

0 Kudos
Message 1 of 11
(3,216 Views)
Solution
Accepted by topic author LightWorker

That error doesn't make much sense.  LV 2013 can certainly open and run LV8.6 files.

 

You said the executable it the one giving you this error.  Where are you running this executable?  Is it on the same PC you developed and created the .exe on?  Or a different PC?

 

I'm wondering if you are running it on a different PC, that you don't have the proper runtime engine installed.

 

Also, once you moved the Modbus VI's over to your newer LV2013 environment, have you gone through and mass compiled that library?

Message 2 of 11
(3,205 Views)
Are you saying that you are trying to start some version 8.6 code with the 2013 runtime? Why? Since the runtime does not have a compiler, that will not work. Mass compile the old code to 2013.
Message 3 of 11
(3,204 Views)

The executable is running on the same machine.

 

I haven't mass compiled the Modbus VI's - I've just included them in a project after downloading them. I'm not sure what a mass compile is.

 

 

0 Kudos
Message 4 of 11
(3,199 Views)
And you didn't look it up in the help?
0 Kudos
Message 5 of 11
(3,197 Views)

I didn't even know about its existence before so how could I look something up that I don't know about?

 

 

0 Kudos
Message 6 of 11
(3,194 Views)

Thanks RavensFan. I've found the mass compile function and run it for the modbus library. This seems to have stopped the error message appearing. I'll check out the mass compile function in more detail as this is new to me.

 

 

0 Kudos
Message 7 of 11
(3,192 Views)
You were told about mass compile from two different answers. My point about the help is that you could have looked it up after getting those answers instead of posting another question.
0 Kudos
Message 8 of 11
(3,187 Views)

I did. I was just stating that at the time of writing I didn't know what mass compile was. Do you have a problem with that?

 

0 Kudos
Message 9 of 11
(3,184 Views)
I do have a problem with people being lazy, yes.
0 Kudos
Message 10 of 11
(3,180 Views)