LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

how to build a subvi with a path

Hi everybody

I am using, in a main vi, a subvi with reentrant execution. Therefore I used a path to indicate the location of this subvi.
It works very well.
My problem is:
When I build an application, and use it on another computer, the file.exe does not execute the subvi, since it does not find it on the specified path.
How can I change this and manage to have this subvi run by the file.exe?
0 Kudos
Message 1 of 11
(3,739 Views)
Why do you need a path to use a reentrant subVI? Can't you just drop it on the diagram? Do you mean you're calling the VI dynamically?

If so, you probably forgot to include the subVI as a "Dynamic VI" when you built the application. As a result, the subVI has not been included in the application.
When you include a VI as "Dynamic VI" it is stored in the executable internal LLB and will be searched there whatever path is entered on the diagram.


LabVIEW, C'est LabVIEW

0 Kudos
Message 2 of 11
(3,739 Views)
Actually I am using an "invoke node" and an "open vi reference" to use the property wait until done in the method "run vi".

I did not forget to add the subvi as a dynamic VI, and it does not work.
Do you have any other piece of advice?
thanks

Merci Jean Pierre
0 Kudos
Message 3 of 11
(3,739 Views)
Yes. Get the error cluster output from the calling code so we can figure what goes wrong.

And if you need the Front panel of the called VI, check in the VI Settings in the App. Builder that the front panel is included


LabVIEW, C'est LabVIEW

0 Kudos
Message 4 of 11
(3,739 Views)
Eh bien en fait, il n y a pas d erreur, c est juste que le subvi ne s execute pas. Quand j execute le .exe sur le PC d origine, il fonctionne, mais des que je l execute sur un autre PC, il fait comme si il ne trouvait pas le subvi, et passe au dessus.
0 Kudos
Message 5 of 11
(3,739 Views)
Si le VI n'avait pas été trouvé, il y aurait une erreur 7, file not found. Est-ce que le VI utilise des ressources (comme VISA) qui n'auraient pas été installées sur l'autre PC?


LabVIEW, C'est LabVIEW

0 Kudos
Message 6 of 11
(3,739 Views)
non, pas de ressources utilisees.
Pour resumer:
J utilise "vi path" connected to "open VI reference", then to "invoke node:set control value", finally to "invoke node:run VI" avec "wait until done" false et "auto dispose ref" true. Le subvi a la case "reentrant execution" cochee.
Je construis un exe avec le vi en top level et ce subvi en dynamic vi, et le exe ne fonctionne pas...

Merci beaucoup pour votre temps.
0 Kudos
Message 7 of 11
(3,739 Views)
Excusez-moi de le demander à nouveau mais avez-vous connecté les error out/in dans la séquence "Open VI Ref">"Set Control Value">"Run VI" puis affiché le résultat dans un indicateur? Il devrait y avoir une erreur quelque part si ça ne fonctionne pas. Essayez aussi de faire ouvrir le Front Panel du subVI.


LabVIEW, C'est LabVIEW

0 Kudos
Message 8 of 11
(3,739 Views)
Oui effectivement j ai effectue toutes ces connections.
L ouverture du front panel du subvi ne me renseigne pas plus.Puisqu il est en reentrant execution, il n y a pas d activite apparente sur le front panel.
0 Kudos
Message 9 of 11
(3,739 Views)
Donc
- le VI est chargé en mémoire dans l'application s'exécutant sur le second PC
- son FP peut s'ouvrir
- aucun message d'erreur lors de l'appel

Mais
- le VI ne fonctionne pas correctement comme il le fait sur le premier PC.

En ce qui concerne LabVIEW, tout semble correct. Il s'agit peut-être d'une action spécifique de votre VI qui ne se fait pas de la même façon sur les 2 PC. Utilisez-vous des chemins pour localiser des fichiers?


LabVIEW, C'est LabVIEW

0 Kudos
Message 10 of 11
(3,739 Views)