This content is not available in your preferred language.

The content is shown in another available language. Your browser may include features that can help translate the text.

Can I Unlock a LabVIEW Class?

Updated Aug 22, 2023

Reported In

Software

  • LabVIEW Full
  • LabVIEW Professional

Issue Details

  • The class I want to edit it currently locked. How can I unlock the LabVIEW class?
  • When the same class is used in multiple different targets, the class and its private data control become locked and cannot be edited. Is there a work around for being able to work on a project that has multiple targets and have the flexibility of developing your classes all within the same LabVIEW project?

Solution

There are multiple ways to unlock a LabVIEW class. To unlock the class try the following methods:
  • Unload the class from the second application instance. This action should unlock the class for editing in the first application instance.
  • Delete the control of the class in the second application instance and save the VI.
  • Close the second application instance. This action allows the class to leave the memory and unlocks the class for editing in the first application.
  • Close your project and open the class direclty outside of the project. Then save the class and reopen the project.
Note: If you are using a Real Time system, the class will become locked if it is referenced both under My Computer and the RT Target. In order to unlock the class, make sure that the class is not referenced under multiple targets. 

Additional Information

Keep in mind that if you simply chose to delete a control of a class without saving the VI the class is not completely unloaded and will remain locked. This is due to data of the class still being present in the history of the VI. The class remains locked until all instances of the data are gone.

This lock exists to solve any issues that can occur when making changes between copies of the class. For example, if the typedef is edited in one application instance and the class is edited in another instance, resolving those changes is impossible since the order in which the changes are made affects the final outcome of the class.