Jump to content

Finding, Listing & Moving SubVIs.


Recommended Posts

I’ve inherited a large cumbersome Labview application, with scores of SubVIs.

The directory structure of this application is a disaster, with multiple, probably unused, copies of the SubVIs scattered around in various sub-directories. I would like to construct a list of the SubVIs which are really used and their full path. Then I would like to construct a new directory tree, move the actually used SubVIs into rational places, and finally change the path references that the main VI uses for those SubVIs.

Also I am trying to move this application from 7.1 to 8.5 and I’m having trouble making an executable for reasons I think are related to confusing which SubVIs are being used.

What is the most sensible way to do this?

Link to comment

Bhima,

You may first wish to create a backup of the current file system, if that does not already exist.

There may be better ways to do this, but I think all you need is to save it in 8.5 and save all suv-VIs to raise it up.

To clean it up:

Open the top level VI.

File/Save As

Duplicate Hierarchy

Give it a new location

GO

Since you don't like the reproduced Hierarchy you can now move the new file set around as you desire. You can call up the top level VI and manually direct it to the new locations. Use View/VI Hierarchy as an aid if you like.

If you want new names for the old sub-VIs there is no simple way to do this. You just have to rename and make the top level VI call them all up. VI Hierarchy is a good help for this sort of thing.

Mike

Link to comment

Thanks Mike, this worked the way you said it would. :)

This app was made in 7.1 and I'm new to Labview, so I haven't spent much time in Labview 8.5. Now I wish I had... I don't think 7.1 works this way.

Now if I could only convince 8.5 to make a Windows excutable as easily as 7.1

Link to comment

QUOTE(Bhima @ Feb 5 2008, 03:59 AM)

Thanks Mike, this worked the way you said it would. :)

This app was made in 7.1 and I'm new to Labview, so I haven't spent much time in Labview 8.5. Now I wish I had... I don't think 7.1 works this way.

Now if I could only convince 8.5 to make a Windows excutable as easily as 7.1

In 8.x there are two separate steps to creating an executable.

Building the Installer (which also gives you the option of including DAQmx settings, NI-MAX, LV-Runtime Engine etc. etc)

Building the Exe

This way you can repeatedly build the exe quickly instead of building the installer as well (like before).

I would suggest start with a fresh build spec instead of trying to use the old 7.x one. Sometimes the old one gets corrupted, and at any rate, its pretty straightforward to just build an exe.

Define the top level VI (include any dynamic VI's) direct where you want the result stored, the name of the exe and then build.

Neville.

Link to comment

QUOTE(mross @ Feb 5 2008, 03:27 AM)

Open the top level VI.

File/Save As

Duplicate Hierarchy

Give it a new location

GO

This method has a terrible flaw. If any VIs are being called dynamically, you will not find them using this method. To check if any VIs are being loaded dynamically look for any instances in your application of the 'Open VI Reference' primative (member of the 'Application Control' pallette).

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.