From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, 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: 

Lots of problems building a large executable with LVOOP classes

It's not overly tedious, unless you have lots and lots of classes which contain same-named VIs. However the solution is not very desirable, as a user is able to view your VIs in the llb directory if they have LabVIEW installed. A method of somewhat obscuring your VIs is to rename the llbs as dlls, as seen in this document
_____________________________
- Cheers, Ed
0 Kudos
Message 31 of 38
(2,333 Views)

Hello again,

 

 this post is probably not in the right place, but it is related to the LVOOP build I had problems with in my previous posts.

 

My application (the same app as in previous my post) is controlling an Andor camera, and works using there driver dll. I include this dll in the build properties "Source Files"-"Always Include".

 

(Note: I have "Remove unused members of project libraries" Checked, since the project would not build at all unless this was checked, it came up with an error "File Not Found: ....Hardware.lvlib". For some reason with the "Remove unused members of project libraries" Checked it doesn't have this problem, though this lvlib is used.)

 

After building the .exe, I look into the exe's directory and find that the driver dll is in the folder "\data". 

 

Then I run the executable and it asks me to locate the driver dll.

Shouldn't it already know where that is?

Is there anyway that this can be avoided?

 

(Note: this behavior is repeated even if I build the .exe with out having put the driver dll into the "Always Include" box.) 

 

Thanks,

Paul. 

0 Kudos
Message 32 of 38
(2,304 Views)

I have found a KnowledgeBase article on this very problem which says that I should include the dll into the .exe directory. After doing this, the app works fine, no need to explicitly find the dll.

 

http://digital.ni.com/public.nsf/allkb/862567530005F09C862565C50068363D?OpenDocument 

0 Kudos
Message 33 of 38
(2,297 Views)

Hi Ed,

 

is user able to see the block diagram of your VI after building an EXE ? (if he has LabView, of course).  I built an application and I tried to open a VI but LabView reported an error:

 

LabView: Resource not found.

 

An error occurred loading VI "Device.lvclass:Init.vi".

LabVIEW load error code 3: Could not load front panel.

 

Regards, 

 

Ljubo.

 

 

 

0 Kudos
Message 34 of 38
(2,209 Views)

Hi Ljubo,

 

A user will generally not have access to the block diagram if they have just the executable. You could make a debuggable executable, but this will require LabVIEW throughout the debug process. Check out KnowledgeBase 40K7J8MY: How Can I Debug My LabVIEW Executable and the LabVIEW Help for more information.

 

About your specific error, KnowledgeBase 33CDL8QX "LabVIEW Load Error Code 3: Could Not Load Front Panel" When Running a LabVIE... maybe helpful.

Joshua B.
National Instruments
Message 35 of 38
(2,178 Views)

I have some of the same thing going on and i have tried the advice of enabling debugging and also making sure that the boxes under additional exclusions are unchecked for Disconnect type definitions and remove unused polymorphic VI instances.  I do have remove unused members of project libraries.

 

As it is i have a parent class, VISA hardware.lvclass that is inherited by DMM.lvclass and environmental test chamber.lvclass.

 

environmental test chamber.lvclass is inherited by Thermotron 2800.lvclass and simulated environmental test chamber.lvclass.

 

DMM.lvclass is also inherited by a few classes but they arent the issue, they work FINE....

 

now i am getting an error with one of the VIs in environmental test chamber.lvclass when i try to compile.  When i remove any calls to the children of that class and just make all the calls to the parent class the application builds just fine.  Otherwise it wont build at all.  Everything has worked fantastic in the development environment but it isnt working when i want to create the executable and i need to create the executable as i am also on a deadline here.  I dont understand how everything can work just fine with the DMM.lvclass but not with this when i created them in the same manner. 

 

I've attached an image displaying the error i receive and a glimpse at my project view to show the parent and child classes that are the source of the problem, thanks

 

Brent 

0 Kudos
Message 36 of 38
(2,073 Views)
while i was trying to figure this out i decided to load my project onto clearcase and then get it off clearcase onto a laptop so i could use it in the lab to test this out.  anyways, after uploading it onto clearcase my libraries all broke and i had a hell of time trying to fix everything with all the random errors that had occurred that i decided to just create a network share and do it that way.  After copying and pasting everything into the share and fixing all the errors that had come from that (a class had disconnected itself and had to go in and fix the inheritances and what not) the build problem worked itself out and now its building.  really weird....
0 Kudos
Message 37 of 38
(2,059 Views)

I know this is an old thread, but I found it through Google, so others may do too.

 

I have both the issues with the warning about the names being the same and also the error that prevented the build completely.

 

I deleted the build specification, and the directory it was trying to build too, then created a new build spec, and everything worked fine, with no warnings.

0 Kudos
Message 38 of 38
(1,037 Views)