VeriStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Manage XML files in Custom Workspace tool

Solved!
Go to solution

Hello,

 

I developed a workspace tool that was working until I add to it the XML VIs from File I/O >> XML >> XML Parser.

I can not add any VI from this pallet to my worksapce tool. I get an error when try to open the workspace tool if any of those VIs are inside my tool.

The erro is:

Error

In my workspace tool i need to open/create/edit and save XML files.

 

I am abble to use Proprety Nodes and Invoke Node for this kind of files. And i already replace all NI_XML.lvlib VIs for property nodes and invoke nodes. But there are 2 VIs that actually I'm still can't find the solution for them.

That are the NI_XML.lvlib:New.vi and the NI_XML.lvlib:Close.vi because they are password protected.

 

Do anyone have the idea how to solve this?

 

I saw that some VIs from this XML pallet are using a dll. For example the NI_XML.lvlib:Get First Matched Node.vi that inside is using the DOMUserDefRef.dll.

I saw the functions of this dll and there are one for close that might be the one that they are using inside the Close.vi. The function is DUXDocumentClose.

 

I need this because u can't close a XML reference with Close Reference.vi.

Example vi

 

I need to replace this 3 VIs.

0 Kudos
Message 1 of 7
(4,899 Views)

You need to create source distribution, that will put all the dependency subvi to llb placed in the same folder as tool.

 

Tool is invoked through NI VeriStand.exe, so it doesn't have access to dependencies in LV folder.

CLA, CTA, CLED

0 Kudos
Message 2 of 7
(4,897 Views)

Hi thank you for your fast repply.

 

Yes I already think in something like that. But there is another problem if i do that.


This tool is receiving commands from one workspace costum control and from a stimulus profile step ("Send Workspace Tool").

And the step that can sent commands to the workspace tool only an VI can be passed. So I can not create a source distribution.

 

But yet i tryed what u said and get the same error.

0 Kudos
Message 3 of 7
(4,892 Views)
Solution
Accepted by topic author renatoribeiro

You can do it in the way, that main vi is alone as .vi. The dependencies should go to llb in the same folder as main vi.

You can look at some of the tools here: https://github.com/NIVeriStandAdd-Ons/

CLA, CTA, CLED

Message 4 of 7
(4,883 Views)

I already tryed that minutes ago when you told that I should use llb.

 

But still when I try to open the tool get the same error.

 

I do you know how can I see the dll function parameters?

I think this may be the only solution.

 

I attached a simple workspace tool project that have a Main.vi that you may add to your workspace tools. And a XML.llb that have a vi that only open, load, read, save and close an XML file.

 

Inside the the folder you also the XML.llb project inside the references.

 

Thank you

 

 

-----

Note:

I tested the XML vi alone and it works.

0 Kudos
Message 5 of 7
(4,880 Views)

There is no build specification in your project. You need to add it.

Something like this

 

 

CLA, CTA, CLED

Message 6 of 7
(4,875 Views)

Thank you very much. Its working in the way your sayng.

 

Thank you for your help and all the time you spent.

 

 

 

0 Kudos
Message 7 of 7
(4,873 Views)