Use this reference architecture to integrate your scripting VI into the LabVIEW tools menu.
The main VI is a dialog box that allows the user to select any VI in memory and then execute a procedure upon that VI using its reference. This VI is intended to be used as an item in the LabVIEW tools drop down menu.
Without using the technique in this reference architecture, it is not possible to get a list of VIs in memory from a VI launched from the LabVIEW tools menu. This is because normal VIs opened by the user are run in the "Main Application" context. The LabVIEW tools menu launches VIs in the "Dialog" context. The All VIs in Memory property node will not return VIs in a different context. Using this VI, you can get all VIs in the default context no matter what context this VI is run in. This is accomplished with scripting.
The attached project includes a build specification that builds an llb to go in the LabVIEW\project directory. When that llb is placed in the LabVIEW\project directory, this dialog box will appear as an entry in the LabVIEW -> Tools drop down menu.
I use this to get a reference to the VI that was active when my scripting tool was called:
I use this in my Abort.VI to get all of the contexts and apps:
jcarmody
Where did you find the App.MenuLaunchApp? I cannot find it in any of the menus of the property nodes.
Hey Herrlin - I put up an article and example on the LabVIEW Add-on Dev Center about this topic a few months back, if you're interested: Integrating into the LabVIEW Menus. I use a VI that comes with LabVIEW, so you don't have to hunt for this property node (which isn't available conveniently in LV).