09-04-2014 08:37 AM
Hello.
I was recently working on a VI that would automatically update VIs for users when a change was released. As a safety protocol, I made sure that this VI did not run the way it was supposed to in developer mode so as to prevent my VIs from being replaced with compiled VIs...until one day, something tragic happened. I forgot to enable this disable. (weird right?) Anyways, I'm not entirely sure I updated my developer VIs with compiled VIs. Is it possible to open and edit a compiled VI? The reason I ask is because I can no longer probe my VIs. But I can open and edit. What's up with that?
Solved! Go to Solution.
09-04-2014 08:43 AM
What do you think is the difference between a "compiled VI" and "some other VI"?
You should check the VI settings >> Execution. Is "Allow Debugging" checked?
Norbert
09-04-2014 08:52 AM
I'm also a bit confused, are you able to upload a VI that we can see what you are talking about?
Was the front panel/block diagram removed? Is the VI locked? or Password protected? Or debugging turned off as Norbert mentioned?
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
17 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
09-04-2014 09:04 AM
Well, I opened a VI that I know to have been built and compiled and it allows me to open it in developer, but is apparently impossible to view the block diagaram. I guess anyways. Looks like the debugger issue. Thank you.
09-04-2014 09:18 AM
If you cannot open the block diagram (and there is no option for this in the "Windows" menu), you have VIs with removed block diagram. This can only be done using the application builder and running for instance a build option called "Source Distribution".
The goal for this feature is to provide functional VIs without providing the block diagram, so the uncompiled code. That uncompiled code is also called "Intellectual Property" (IP). So this feature protects the IP.
But removing the IP of course disables you to review and continue to work on the code.
Sidenote: Each VI file includes the compiled code for the VI unless you selected the option "Separate Compiled Code from Source File". So there is no difference between "Compiled VI" and something else. Each VI is compiled automatically if you are working in the developer environment and recompilation is required.
Hope you got some source code control in place in order to revert the mistake by re-deploying correct versions of the VI files.
Norbert
09-04-2014 09:57 AM
@Norbert_B wrote:
This can only be done using the application builder and running for instance a build option called "Source Distribution".
This is not 100% true, and sorry to correct you if you already know this but VI Server can remove block diagrams programatically too. Also building an EXE in the application builder removes block diagrams by default, but settings can be changed so it doesn't.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
17 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord
09-04-2014 10:03 AM
Hehe, that's why i wrote "for instance".
You are correct that i left out the optional parameter "Without Diagram" of the "Save Instrument" method (class: VI), but i have never seen one using that for a long time. In fact, i always tell developers to remove BDs only via Build Scripts as this is the "most conscious" way to perform this by the developer.
Norbert
09-04-2014 10:22 AM
I have a tools menu item for it, but I think I've only used it once or twice.
Unofficial Forum Rules and Guidelines
Get going with G! - LabVIEW Wiki.
17 Part Blog on Automotive CAN bus. - Hooovahh - LabVIEW Overlord