LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Register Session VI

What does this do? I found it in the LV XML DOM library. No entry in the LV Help, no presence on the palettes. I get the feeling I'm not supposed to know it's there. So what's it do? 🙂

 

register_session.png

0 Kudos
Message 1 of 6
(3,243 Views)

Hi David,

 

There is a corrective action request (#334610) to add information in the detailed help for this VI in future releases of LabVIEW.

 

Regards,

Allison M.
Applications Engineer
National Instruments
ni.com/support
0 Kudos
Message 2 of 6
(3,218 Views)

That's cool. Fixing documentation bugs is important.

 

Mind explaining the VI's behavior here so we can put it to use in current versions where it's already out in the open?

0 Kudos
Message 3 of 6
(3,214 Views)

Hi David,

 

I am having some trouble finding that VI. Could you please upload the vi?

 

Regards,

Allison M.
Applications Engineer
National Instruments
ni.com/support
0 Kudos
Message 4 of 6
(3,201 Views)

Hi Allison -

 

It's inside NI_XML.lvlib:Get All Matched Nodes.vi:

 

register_session_vi.png

0 Kudos
Message 5 of 6
(3,190 Views)

It's part of an undisclosed LabVIEW feature named User Refnums. Basically it allows to add refnum object hierarchies to LabVIEW that can have property nodes and even method nodes which LabVIEW will translate into calls into a DLL. The interface description betweeen LabVIEW and the DLL is done in text files inside the resources/objectmgr directory in LabVIEW. The whole mechanisme is used by several LabVIEW libraries througout the time since about LabVIEW 7.0 but it seems NI has somewhat abandoned with that for newer developments.

 

As to why it hasn't really been documented so far I have a very good guess: After having tinkered with this for quite some time I have found that it is rather unstable. It works if you have everything right in the interface description file, but even the most simple syntax errors will result in either the interface being completely inavailable without any good way to get informations about what caused it, or even more interestingly random crashes throughout execution. Also as it is a translation between LabVIEW and the C calls into the DLL, it has the same problems as the Call Library Node in that errors in the datatype description of parameters will crash everything very quickly. So it is only really feasable for people with a very good understanding of how to call C code in LabVIEW anyhow, which is a very limited audience.

Rolf Kalbermatter  My Blog
DEMO, Electronic and Mechanical Support department, room 36.LB00.390
0 Kudos
Message 6 of 6
(3,180 Views)