09-15-2023 12:57 PM - edited 09-15-2023 01:00 PM
While working on my EXIF reader (getting close), I decided that the best way to have the user select which tags are to be read is with a custom Express VI that browses the tags. The problem is that, due to a deficiency in LabVIEW, when you move the code that defines an Express VI, it breaks*. So I will need to create an installer that performs a fixup after copying. But where should it put the Express VI?
What do you think?
* Inside an Express VI is a link to the configuration VI. This consists of a path that is either symbolic or absolute. LabVIEW doesn't update that path when things are moved.
09-15-2023 01:40 PM
Why not put the whole package together in user.lib or vi.lib?
09-15-2023 03:57 PM - edited 09-15-2023 03:59 PM
An ExpressVI is a development tool. In my opinion, it would be a mistake to move the configuration VI anywhere other than the default location. IIRC, that is <LabVIEW>\vi.lib\ExpressVI\...or thereabouts. Then, just configure the proper destination in the installer or package .
09-15-2023 05:12 PM
@JÞB wrote:
An ExpressVI is a development tool. In my opinion, it would be a mistake to move the configuration VI anywhere other than the default location. IIRC, that is <LabVIEW>\vi.lib\ExpressVI\...or thereabouts. Then, just configure the proper destination in the installer or package .
I make lots of tools. I don't think it's a mistake to put them anywhere I want.
The actual default folder for homemade Express VIs is:
... \user.lib\_express\
09-16-2023 06:00 AM
@paul_a_cardinale wrote:
@JÞB wrote:
An ExpressVI is a development tool. In my opinion, it would be a mistake to move the configuration VI anywhere other than the default location. IIRC, that is <LabVIEW>\vi.lib\ExpressVI\...or thereabouts. Then, just configure the proper destination in the installer or package .
I make lots of tools. I don't think it's a mistake to put them anywhere I want.
The actual default folder for homemade Express VIs is:
... \user.lib\_express\
Mistake or not? Sometimes you crash when using other tools.
Just saying. Your tools are probably perfect. The others weren't written by a developer with your standards. 😉
09-16-2023 11:47 AM
@JÞB wrote:
@paul_a_cardinale wrote:
@JÞB wrote:
An ExpressVI is a development tool. In my opinion, it would be a mistake to move the configuration VI anywhere other than the default location. IIRC, that is <LabVIEW>\vi.lib\ExpressVI\...or thereabouts. Then, just configure the proper destination in the installer or package .
I make lots of tools. I don't think it's a mistake to put them anywhere I want.
The actual default folder for homemade Express VIs is:
... \user.lib\_express\
Mistake or not? Sometimes you crash when using other tools.
Just saying. Your tools are probably perfect. The others weren't written by a developer with your standards. 😉
Lemme see if I understand your position: You're saying that it's ok for me to put my tools anywhere I want because they are perfect; but if other people put their tools wherever they want, LabVIEW will crash because the tools are imperfect and imperfect tools will crash unless they're in a certain location.
Have I got that right?
09-17-2023 04:12 AM - edited 09-17-2023 04:24 AM
@paul_a_cardinale wrote:
@JÞB wrote:
@paul_a_cardinale wrote:
@JÞB wrote:
An ExpressVI is a development tool. In my opinion, it would be a mistake to move the configuration VI anywhere other than the default location. IIRC, that is <LabVIEW>\vi.lib\ExpressVI\...or thereabouts. Then, just configure the proper destination in the installer or package .
I make lots of tools. I don't think it's a mistake to put them anywhere I want.
The actual default folder for homemade Express VIs is:
... \user.lib\_express\
Mistake or not? Sometimes you crash when using other tools.
Just saying. Your tools are probably perfect. The others weren't written by a developer with your standards. 😉
Lemme see if I understand your position: You're saying that it's ok for me to put my tools anywhere I want because they are perfect; but if other people put their tools wherever they want, LabVIEW will crash because the tools are imperfect and imperfect tools will crash unless they're in a certain location.
Have I got that right?
Not quite. I'm suggesting that some tools that ship such as "Why is this item in dependencies,?" Have probably never been tested with custom tools in wherever locations. I really doubt that NI really expected you to develop some of the really cool stuff that I have seen you mention on these forums.
So, my thoughts are to leave MyTools etc...in the default areas to avoid tripping on a rusty nail in the LabVIEW IDE Attic. When NI opens up new IDE features (e.g. Frameworks) we know that those features really are not completely new. Often they use existing internal development tools and pound down some ugly things. [Bash to fit, Spackle to cover, Paint to hide] It leaves me with an extra sense of caution when I follow a white rabbit into acrane LabVIEW holes containing a hookah-smoking caterpillar.
09-17-2023 10:54 AM
@JÞB wrote:
@paul_a_cardinale wrote:
@JÞB wrote:
@paul_a_cardinale wrote:
@JÞB wrote:
An ExpressVI is a development tool. In my opinion, it would be a mistake to move the configuration VI anywhere other than the default location. IIRC, that is <LabVIEW>\vi.lib\ExpressVI\...or thereabouts. Then, just configure the proper destination in the installer or package .
I make lots of tools. I don't think it's a mistake to put them anywhere I want.
The actual default folder for homemade Express VIs is:
... \user.lib\_express\
Mistake or not? Sometimes you crash when using other tools.
Just saying. Your tools are probably perfect. The others weren't written by a developer with your standards. 😉
Lemme see if I understand your position: You're saying that it's ok for me to put my tools anywhere I want because they are perfect; but if other people put their tools wherever they want, LabVIEW will crash because the tools are imperfect and imperfect tools will crash unless they're in a certain location.
Have I got that right?
Not quite. I'm suggesting that some tools that ship such as "Why is this item in dependencies,?" Have probably never been tested with custom tools in wherever locations. I really doubt that NI really expected you to develop some of the really cool stuff that I have seen you mention on these forums.
So, my thoughts are to leave MyTools etc...in the default areas to avoid tripping on a rusty nail in the LabVIEW IDE Attic. When NI opens up new IDE features (e.g. Frameworks) we know that those features really are not completely new. Often they use existing internal development tools and pound down some ugly things. [Bash to fit, Spackle to cover, Paint to hide] It leaves me with an extra sense of caution when I follow a white rabbit into acrane LabVIEW holes containing a h****h-smoking caterpillar.
Interesting that you mention "Why is this item in dependencies?". I've never seen it work; in any version of LabVIEW. It always crashes LV when I try it.
Interesting side note: When I initially tried to post this response, it was rejected with the message:
The message body contains h****h, which is not permitted in this community. Please remove this content before sending your post.
Although, in that message, they spelled out the word h****h. Apparently, I'm not allowed to use that word (but you are).
09-17-2023 11:27 PM