03-22-2010 01:04 PM
03-23-2010 09:32 AM
Hey Chris,
A missing subVI error is a pretty broad error. It would be helpful to get more information with what you are doing. Do you have a built executable that you are trying to deploy to your XP machine? Does that computer have LabVIEW or at least the run time engine? What VI does LabVIEW say is missing?
This error is most likely caused by the simple fact that your program is trying a use a VI that simply isn't on your system. If you are using subVI's in your program, make sure that you transfer all your subVI's to the new computer. If the error is not caused by a subVI, make sure that your new computer has all the required toolkits and modules installed.
03-24-2010 04:10 PM
Ben,
The problem seems to be specific to XP Home based systems. I have used this same deployment package to install the executable and LV RTE on XP Pro and Win 7 with no problems. The VIs it is having trouble finding at load time are related to a custom dll.
The only support required by the exe is the LV RTE. I have tried a mass compile to repair any linkages on the development machine prior to building the exe and installer.
Chris
03-24-2010 05:38 PM
New information... I explicitly included the missing VIs in my build spec (this is all under LV 2009). The new error was that the external function was not found. I then specified the path to the library on the block diagram. Now the VI calling the dll returns an error 42. In LV this is a general error, so I think (hope) it is being generated by the dll.
Chris
03-25-2010 11:28 AM
Hey Chris,
It is likely that this error 42 is being generated by the dll and being passed to any error handling that you have in your executable. Are you only getting this error when running this installation on this particular computer?
03-25-2010 12:23 PM
It seems to be only on XP Home machines. I have tested it on an XP Home laptop with the same error being returned. I will be meeting with the dll developer on Friday, so maybe we will get to the bottom of it then. I tried installing the C redistributable package on the XP Home machines but that didn't help.
The thing I find interesting from a LabVIEW perspective is that I had to explicitly include the VIs and specify the path to the dll on the block diagram in order to get to the point that the error appears to be coming from the dll. It seems strange that the executable was losing these paths on XP Home and not on XP Pro or Win 7.
I'll post Monday with the findings from my meeting with the dll developer.
03-26-2010 09:54 AM
03-26-2010 11:32 AM
The dll didn't change locations.
03-29-2010 10:29 AM
Hey Chris,
That does seem strange; especially considering that you are not getting that error on machines with other versions of windows. Did you hear anything from the developers of the .dll? One workaround worth considering is including the .dll in your executable as an always included file and use relative addressing in your VI. Would have the same effect as hard coding the .dll file path. However, it would eliminate any errors that might have occurred due to having the .dll in different places on different machines.