LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Packed Libraries: Allow Access from public to private access scope ?

Hi!

 

First time for me building a packed library to control a motor, please forgive me if I'm missing something obvious here. It features some safety mechanisms so I basically want the user to have access only to "init", "Main Control", "Close" and some "Get" VIs (like get velocity/torque etc.).

 

For that in my project library I've set up two virtual folders: "Public API" and "Private". Obviously in Public I have the VIs mentionned above and in Private I have all of the hidden code ensuring control and safety basically.

I don't really want the user to see the "Private" virtual folder (Because they don't need to) so I've set its access scope as ... *Drum roll* ... Private!

 

I'm sure you already see the problem: After building my packed library, my main control won't execute because "This VI uses a dependency that has changed. That change requires this VI to recompile. This VI is compiled into a Packed Project Library and cannot recompile by itself. You must rebuild the Packed Project Library to account for the changed dependency."

If I change back the access scope to public, then everything runs fine.

I don't know if that's important, but some of my VIs (in Private) use a DLL that is being exported in the same folder. But I typically have "sub-libraries" to my main library as shown below

VinnyLaTaupe_1-1603897118791.png

 

Is it not possible to prevent user to see some VI but still leaves VIs access to Private access scope?

 

Thank you in advance for your help.

Best,

Vinny

0 Kudos
Message 1 of 3
(1,684 Views)

Can you supply an example project that shows the issue?  I have been something similar for a few years and have yet to run into this issue.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 2 of 3
(1,662 Views)

So are you saying this is not a normal behaviour?

 

Sadly no I'm not allowed to share any code 😕

However, I noticed that in the build specifications, if I enable debugging, then I don't have any issues, everything works fine. If I don't enable debugging then I have one single vi that won't execute. All the others are fine. That puts other internal libraries as well as external DLLs out of the equation.

 

Enable Debugging On

VinnyLaTaupe_1-1603968511685.png

 

 

Enable Debugging Off

VinnyLaTaupe_0-1603968402470.png

 

0 Kudos
Message 3 of 3
(1,613 Views)