LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Missing SubVIs when generating exe


mattyk wrote:

I have deleted all the instances of the Simple Error Handler.vi and the General Error Handler in my program.  I also rewrote the Generate Selection.vi which looked after the typedef missing file.  I also looked after the Search and Replace Pattern.vi.  The only missing files are the report generation VIs.  Like I said before, I edited some of these report generation VIs so I could adjust the column widths of a table.  I saved all of them in the origional NI location.  Again, the VI runs fine in the development environment.  The executable can't find these files.  I tried adding them to my project (again).  I tried saving them in my project folder as a directory structure and not as a library structure and then adding them to the project.  I tried rewriting the code, selecting the VIs that were missing right out of the controls menu.  I tried everything I can think of.  Now I am re-installing LV.  I don't think this will work because the LV at work has the edited toolkit (report gen) and at home has the origional.  At home it acts the same way.  The exe does not know where to find these files.  Hope this helps.

 

Thanks

Matt


Yep- essentially you did yourself a vast disservice.  I did it once myself and regretted it.  It is very OK to edit items in the installed libraries and tool-kits.  But I MUST ADD that you really should save them with a unique name in a different location.  Otherwise when the top-level vi calls these on another machine (or from the run-time engine) it looks for the unmodified vi's that have the wrong properties and they are un-identifyable. by editing the default libraries you just made it impossible to run code developed by another machine that expects the default vi to be there and other machines with the default vi's will not run code you've developed.

 

Sorry to say but, you will need to identify the library vi's you and the other guy modified, save them to a new name and location, edit the callers to look for the resaved modified vi's and them reinstall LabVIEW to recover the shipped libraries.  


"Should be" isn't "Is" -Jay
0 Kudos
Message 11 of 14
(890 Views)
In my defense I tried saving the report generation files I was using to another location.  I didn't change the names though.  This screw up to whole toolkit.  I had to reinstall after that.  I am a little confused on how Labview's toolkits VIs are linked togeather.  For example, the report generation toolkit has VIs that if you change a subVI in say the standard report VI (say you change a numberic value as your input to an array of numberic values) than you have to change all related VIs in the Excel, HTML and whatever else it is linked to.  I guess my question is that how do you go about editing a toolkit and then renaming and saving that toolkit.  There are so many VIs that would need to be renamed and saved that I can't keep track of all of them.  The funny thing is that I don't want to edit all of the VIs in the toolkit, just one so I have conrol over the table column width.  If I just rename and save the one VI than the toolkit will reference this VI.  Otherwise it won't work.  If the toolkit references the new VI then I am back to square one which is that I have edited the main toolkit.
0 Kudos
Message 12 of 14
(888 Views)

Yep- pretty difficult.

 

Before editing a library vi you should really ask yourself a few questions.  

  • Can I accomplish the same thing by placing the library.vi  in a loop or subvi?
  • Can I accomplish the same thing by writing my own code?
  • Would I like this new code in my re-use library instead?
e.g you modified a toolkit function to add a table column width control-  could you have written a vi that only controlled the table column width and left the original alone? probably, and the vi you modified may have nothing to do with table formatting so you kinda mixed in an unrelated function (generally, a style point recommendation in any software design review)

the number to array of numbers is probably better handled by placing the vi in a loop- excel and html handle data much differently and you may fix the one you want while breaking the unused option.

"Should be" isn't "Is" -Jay
0 Kudos
Message 13 of 14
(874 Views)

I tried copying the code from one VI to a new VI and saved it with the same name.  I built an exe with this subVI which worked.  Then I built the main progam and it worked.  I'm not sure of the explaination behind this or why it worked.  It's weird because I tried rewriting the code in a new VI, selecting VIs from the menu and this didn't work so I'm not sure why copying and pasting it worked.

 

Thanks alot for the help

 

Matt

0 Kudos
Message 14 of 14
(852 Views)