LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How can I use the write palette.vi in an application when it is not supported by run time engine


@nperhach wrote:

The files does create a *.mnu with items the write palette.vi has to take an empty cluster of items any way before it can bundle the items like in the create palette.vi example so was giving what zealot said a shot. That is true everyone would have the deployment system. Trying to make an application because I was told to, if there is not away I will settle with distributing the VI.


Trust me on this.  Use VI Package Manager.  I gave the link earlier.  It actually comes with LabVIEW in the last few versions.  With the community verion (free) you can create a package of VIs and a palette for them and then distribute the package.  Then your other users just need to use VIPM to install the package to whichever version of LabVIEW they want.  Yes, VIPM allows the installation of packages on a per LabVIEW install basis.  JKI has spent many years working on it and it just keeps getting better.  And they already did everything you are trying to do.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
Message 11 of 26
(797 Views)

Thansk for the link. The VIPM looks like a good tool for distributing VIs and would allow the VIs to be used in any version of LabVIEW. However, for what I am trying to accomplish I need the process automated for continuous integration. Does VIPM have a command line interface?

0 Kudos
Message 12 of 26
(771 Views)

@nperhach wrote:

Thansk for the link. The VIPM looks like a good tool for distributing VIs and would allow the VIs to be used in any version of LabVIEW. However, for what I am trying to accomplish I need the process automated for continuous integration. Does VIPM have a command line interface?


Let me see if I'm tracking you.  Your requirements are:

 

  1. create pallet items automatically from source code delivered to multple developers
  2. Continuously refresh the pallet set when new vis are delivered

You do not need an application for that! You just need to build you mnu the right way!

 

Build and deploy a sub-palatte linked to the directory containing the deployed items.  When new items appear in that directory they show up on the pallet linked to the directory!  (If you load palettes during launch you need to restart LabVIEW)

Untitled 36 was just added to my reuse folder just for you It'll go away when I delete the blank vi

Capture.PNG


"Should be" isn't "Is" -Jay
0 Kudos
Message 13 of 26
(762 Views)

When I originally started making the palette I was using the synchronus with directory, but I thought it might be a good idea to remove that because if there are other files or folders it would create an empty slot in the palette. I may try putting that back on so users can add VIs to the subpalette without having to run my application again. The reason I need to either distribute an application or a vi that converts the VIs to a mnu file is because if I build a mnu file and then distribute it with the VIs, it looses the links to them and the palette has a '?' in the VIs place. Also, I want the application because I do not want the user to have to build the palette manually instead they can just run the application.

0 Kudos
Message 14 of 26
(755 Views)

@nperhach wrote:

When I originally started making the palette I was using the synchronus with directory, but I thought it might be a good idea to remove that because if there are other files or folders it would create an empty slot in the palette. I may try putting that back on so users can add VIs to the subpalette without having to run my application again. The reason I need to either distribute an application or a vi that converts the VIs to a mnu file is because if I build a mnu file and then distribute it with the VIs, it looses the links to them and the palette has a '?' in the VIs place. Also, I want the application because I do not want the user to have to build the palette manually instead they can just run the application.


Hide Synch itemSmiley Wink


"Should be" isn't "Is" -Jay
Message 15 of 26
(753 Views)
If you are getting ? in a palette, you or your users are installing the mnu and associated files in the incorrect location. Create the files in the user.lib or instr.lib and install them there on other pc's.

I would suggest you actually use a source code control system for keeping multiple systems up to date instead of trying to write your own code. It sounds like you have a flawed system.
0 Kudos
Message 16 of 26
(743 Views)

The .mnu file is installed in the user.lib folder so the palette is placed in the user libraries subpalette or in menus\categories for its own palette. I am currently using perforce as my source repository.

0 Kudos
Message 17 of 26
(730 Views)
So why do you think you need something other than perforce?
0 Kudos
Message 18 of 26
(726 Views)

I do not think I need something else. The vi is just for purposes of automating creating a palette for VIs from a folder on perforce. And I wanted to have the vi as an exe for distributing purposes, but I get an error since write palettevi is not supported by the run time engine.

0 Kudos
Message 19 of 26
(717 Views)
I still don't understand the purpose. You (or a user) creates a set of VIs and the associated mnu, commits the mnu and VIs to perforce. Other users get the mnu and VIs when they do an update. The palettes will automatically update when LabVIEW is restarted. You can force an update as already noted. If you want to distribute something, distribute that of it really matters to get new palettes while LabVIEW is running.
0 Kudos
Message 20 of 26
(715 Views)