LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How do I make a copy of a Labview 8 project?

Hello,

Let's say I have a big, messy, but functional labview 8 project which has host, real-time, and fpga components. 

I now want to make a copy of it which I'll want to rename and morph into some other similar project.

What's the right way to do that?  To me it looks tricky because I see lots of project files with names derived from the original project, and I see a "alias file".

I'm worried that if I do it wrong, I run the risk of corrupting the original project.

A similar question can be asked in the context of wishing to make working backup copies of projects so that if "today's" version is screwed, I can go back to "yesterday's" version.  What's the best way to accomplish that?

Thanks,

Peter H.
0 Kudos
Message 1 of 18
(7,522 Views)

Have you tried building a Source Distribution? (One of the options under Build specification).

Message Edited by altenbach on 02-01-2006 11:00 AM

Message 2 of 18
(7,516 Views)
Hello,

I just tried your suggestion of using the Source Distribution build.  What this did was create a copy of the vi's and of the fpga bitfiles. 
But it did not make a duplicate project.  Hence it did not make a copy of the crucial "background" information such as the existance and configuration of DMA FIFO's.

So... thanks, but I need something more complete.

---Peter H.
0 Kudos
Message 3 of 18
(7,506 Views)
I just make a copy of the whole directory.  I have a program called Shock Tube, and in one main folder I have Shock Tube 0.1, Shock Tube 0.2, etc.  Each one has its own project file and subVI directory.  When I want to add something major and don't want to break what I already have, I just copy it and change the version.   It's not a very large program, so having multiple copies of the same subVIs isn't a problem for me.  Is that why you don't just copy the entire directory?
Message 4 of 18
(7,496 Views)
I do the same thing. I copy the whole directory and just work from there. One thing you should check is that the project loads the correct files, and not files from older copies of the project directory. If you open up the .lvproj file in some text editor like Notepad, you can see the structure of your project (written in XML - but you don't really need to know XML). You can just see all the files referenced in your project and make sure their paths are correct.
Message 5 of 18
(7,484 Views)
Thanks everyone for the suggestions.
 
Looks like copying the whole directory is the way to go. 
One "brute-force" way to prevent that I found to prevent Labview from picking up the wrong/obsolete versions of sub-vi's is to "zip" old versions.

---Peter
0 Kudos
Message 6 of 18
(7,443 Views)
Thanks PGH, for asking the very question I wanted to ask.  Too bad there isn't a less "brute force" answer.  
 
In addition to the directory where my project is, I also have other directories containing rather generic code which I have used in my project.  I wonder what happens if I modify a subroutine in one of these re-use libraries, in such a way as to make it incompatible with the old project?  Is there an "old copy" somehow magically locked away in the Labview 8 project library, keeping me safe?  Or do I need to make a copy of my entire user.lib directory (which I do anyway, on occasion, but it's big).
0 Kudos
Message 7 of 18
(7,363 Views)
I believe a project copying tool has been posted to the LAVA forums (I think by i2dx). I haven't tried it myself, though, since I don't have 8.

___________________
Try to take over the world!
Message 8 of 18
(7,350 Views)

How does the release of LV8.5 impact this discussion? It would appear the new cross-link checking would help with some of the issues mentioned. LV8.5 still doesn't have a way to save a full project under a new name and automatically update the linking. At least I haven't found out how to do this yet. Is it possible? Am I still forced to make a copy in windows and slog through the linking errors?

Bob

0 Kudos
Message 9 of 18
(6,882 Views)
Bob,
 
LabVIEW 8.5 definitely enhances the ability to predict, prevent, and repair cross linking issues.  See this DevZone article for much more information on how this is done.
 
With LabVIEW 8.5, you also have a save as option for the project.  If you select this, one of the options is to duplicate the project and its contents.  This way, you can rename the project and it will save all dependancies to the directory you specify.
 
Also, 8.5 introduced the ability to merge VIs (similar to merging code in text based with multiple developers).
 
You could also use source code control with LabVIEW to keep track of different copies and ensure time isn't wasted editing an older version of a VI (we've all been there...).
 
Regards,
 
Craig D
Applications Engineer
National Instruments
Message 10 of 18
(6,850 Views)