LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

8.5 broke my Make: VI Server for BuildSpecification

I wrote a VI that was sort of a customized "make" for building my application that worked under LabVIEW 8.0 through 8.2.1.  It took so long to build new versions that I decided to automate the process of changing the fields that I changed for each BuildSpecification, save changes, and then use "C:\Program Files\National Instruments\LabVIEW 8.5\vi.lib\AppBuilder\BuildTarget.vi" to build each.  My problem is that in LabVIEW 8.5, some of the methods for BuildSpecification don't seem to work.
 
The method "Tag:Get Names" doesn't return anything.  Not surprisingly, I can no longer do these for EXE targets:
 
VersionInfoFileVersionMajor
VersionInfoFileVersionMinor
VersionInfoFileVersionPatch
 
Or these for Installer targets:
 
BuildLocation
ProductVersion
 
I know that everything under the hood changed for application builder in 8.5 so I wasn't surprised this broke.  Is VI Server still supposed to work for doing these methods?  Is there a new way to do the same things?
 
Travis
 
0 Kudos
Message 1 of 7
(5,871 Views)
Hi Travis,

Several changes were made to the LabVIEW Application Builder in 8.5. While these changes were implemented to enhance the features associated with creating executable applications, several of them may have interfered with your program. The changes are discussed here (see page 65). Unfortunately, you'll need to change your program to include the updates for this version. I'm sorry for the inconvenience.
Amanda Howard
Americas Services and Support Recruiting Manager
National Instruments
0 Kudos
Message 2 of 7
(5,852 Views)

Can you be any more specific about how I have to change my program to make this work?  The question is whether I can use VI Server to progammatically change the build location path and version information for build targets.  The release notes PDF you referenced isn't giving me any clues.  I'm still hitting the wall trying to figure out how to get and set this information.  There don't seem to be any tags available for exe's and installers.  I've tried playing around with "get XML tag" and "set XML tag", but can't figure out what tag name to use even though I can see the parameters in the lvproj file when I view it as XML.

Thanks

0 Kudos
Message 3 of 7
(5,733 Views)

Hi Travis,

As far as I can tell, those methods haven't changed from 8.2 to 8.5. So I don't think you are experiencing an issue with the VI server. However, it is possible that the format of the xml tags in the project file has changed between the 2 versions. That might explain why your previous Make VI doesn't work.

As for the second post about not being able to pull tags when you can see them present in the xml file, I would like to take a look at the code you are calling to get those tags. Can you attach your code (simplify it as much as possible so I can see the problem quickly)?

Sappster
0 Kudos
Message 4 of 7
(5,705 Views)
 

Mark_S. wrote:

Hi Travis,

As far as I can tell, those methods haven't changed from 8.2 to 8.5. So I don't think you are experiencing an issue with the VI server. However, it is possible that the format of the xml tags in the project file has changed between the 2 versions. That might explain why your previous Make VI doesn't work.

As for the second post about not being able to pull tags when you can see them present in the xml file, I would like to take a look at the code you are calling to get those tags. Can you attach your code (simplify it as much as possible so I can see the problem quickly)?




Hi Mark,
 
Ok, here's an example VI.  I should have worded my problem better.  LV Server is working--it is the tagged information that is missing since LV8.5.  I originally used this with LV 8.2.x.
 
In this VI, note that the TypeString property works as does all of the LVServer nodes that preceeds it; however, the "Get Tag Names" invoke node comes back empty--and I think this illustrates the root of what is different now.  What my "Make VI" used to do was set all of that other information:  BuildLocation and all of the version information for both the EXE and Installer BuildSpecs.
 
I also threw in one attampt at trying to use the "Get XML Tag" invoke node to get EXE version information, but it doesn't work. 
 
Thanks,
 
Travis
0 Kudos
Message 5 of 7
(5,686 Views)
Hi Travis,
 
Hope this helps. I have attached an altered version of the VI you posted. It demonstrates how to access the XML build property tags. I did not obtaining the specific values you are looking for or the formatting of the tag values because you were correctly formatting the outputs. I also did not include the set tag functionality. If you have any trouble incorporating this into your program or if you have any other questions, please let me know.
Sappster
0 Kudos
Message 6 of 7
(5,671 Views)
Hi Mark,

Ahh, thanks!  So it was the conversion to the more specific BuildSpec class that was zinging me.  I only included that because it was necessary before and since the TypeString property was working it didn't occur to me to try removing it.

That gets me unstuck,

Travis
0 Kudos
Message 7 of 7
(5,665 Views)