06-23-2011 10:18 AM
Hi all.
I'm doing a LabView project with multiple dependencies and lots of VIs. I want to make a duplicate project and place it in another folder, in order to make deep changes and have a backup available. Using the option Save as --> Duplicate, I get a copy of the entire project and VIs in the folder I choose, but when I run the duplicated project there are dependencies that still point to the original files. There seem to be no way to correct these dependencies unless you do it manually.
Could you give me some advice?
Thanks in advance,
Francisco
06-23-2011 12:19 PM
Hi,
I tried a small duplicate, where I choose only a few dependencies and did not have this issue.
Then I tried a complete project, with the copy all dependencies option. It rebuilt all the folders in the new location, mine and NI's included.
The duplication could not find some VI.LIB/DAQ/ library VI's, strange. Otherwise, all the VI's ran fine and were looking at the duplicated VI's.
Did you rename the project?
Any chance you duplicated twice and got the same results?
Are the "origional files" duplicated, probably so, just checking.
07-05-2011 04:17 AM
Hi, Mark. Thanks for your reply.
Well, I select "Save as..." and "Duplicate .pvproj file and contents" with the option "Select contents to copy" checked. Then I deselect those dependencies included in LabView main folder, such as VIs from vi.lib and user.lib. After that, I choose a project name (different from the original one) and a destination folder. LabView copies all the VIs and folders of the original project in the new destination.
The problem comes when I open the duplicated project, because it has a lot of dependency conflicts. Curiously these conflicts occur mainly with LabView classes (.lvclass) and controls (.ctl), not with common VIs. And then, when the "Resolve Load conflicts" window appears there's no way to select the correct option between the two proposed (the new item and the old one), because it always points to the old item, and the duplicated has the "Load with selected" button grayed out.
How can I resolve this? I may be missing out something.
Regards,
Francisco
07-05-2011 04:50 AM
Francisco,
You can never have multiple items with the same name in memory at the same time. If you try to load an item into memory which is already loaded from another location, you will get a conflict. If this happens across projects, it is called "cross-linking". Cross-linking is a major issues with sources since if you are not aware of it, you possibly change basic functionality in the wrong project.
In order to NOT run into cross-linking, make sure that you unload all sources in LV (maybe even close LV completely) and then check the Windows Explorer first if all components have been copied properly. After this, reopen LV and load the copied lvproj-file.
Note that you will never be able to load both projects into memory at the same time, otherwise, you WILL introduce cross-linking.
hope this helps,
Norbert
07-05-2011 05:11 AM - edited 07-05-2011 05:11 AM
Hi, Norbert.
It seems that my duplicated project still points to the original files, even closing LabView totally. I've checked for the new files and they've been copied to the new folders. LabView seems to load into memory the VIs of the old project even when I close it completely and open the new project.
Is there any way to release them from memory? Why my new project still loads them? Has anything to do with this that these files are global variables and controls (.ctl)?
Regards,
Francisco
07-05-2011 06:04 AM
Francisco,
do you per chance use lvlibs (derived froms as lvclass and xctl) in the project which possibly use absolut paths?
What are the components which cross link?
Norbert