le 02-17-2017 10:58 AM
Bonjour,
J'utilise pour gérer plusieurs appareils, une structure du type MHL, vu dans la formation CORE3 (2016), avec un VI controller et un VI appareil pour gérer un spectromètre. Chaque VI a sa pile de message et sa pile de notifier :
Je souhaite donc ouvrir ou fermer la fave-avant du VI spectromètre, qui contient plusieurs informations utiles. Pour ce faire, j'utilise, avec la boucle évènementiel (cf pattern GMF/MHL) ce bout de code :
Sous environement de développement, cela marche très bien. Le code ouvre la face avant qui me montre mes informations. Et lorsque je la ferme, le vi continue de tourner.
Par contre, dès que je génère l'exécutable du rpogramme principale. Cela ne marche plus. La face avant de spectrometre ne s'affiche pas.
J'ai essayé :
- l'ouverture par référence statique.
- les modification des propriété du VI.
- inclure les sous VI dans le source setting du builder d'exe.
Rien ne marche.
Quelqu'un peut-il m'aider à trouver une solution ? Celles proposées sur le forum ne marchent pas.
Je suis sous labview 2013.
PS : Main.VI =>
Résolu ! Accéder à la solution.
le 06-02-2017 09:00 AM
Salut,
Puisque vous avez mentionné qu’il y a une erreur lors du lancement de l’Exécutable, il se pourrait qu’il y ait un problème lors de la création de l’Exe.
Dans ce cas, je vous conseillerais de poster votre VI.
Salutations,
le 06-02-2017 09:46 AM
Bonjour,
Dans l'option de construction de votre exécutable, vérifier que l'option "supprimer la face avant" n'est pas coché pour votre sous-vi.
Car pour optimiser les exécutables, labview supprime les faces avant des sous-vi qui ne sont pas utile.
De plus, dans le cas d'un lancement dynamique, labview n'incluera pas votre sous vi de manière automatique (n'ayant pas de lien physique avec le main), il faut l'ajouter avec l'option "toujours inclus".
Cdt,
Michael
06-02-2017 09:50 AM - modifié 06-02-2017 09:52 AM
le 06-14-2017 03:14 AM
Merci pour vos réponse.
J'ai résolu le problème. Il s'agit de l'emplacement des sous-VI pointés par l'exécutable.
Je m'explique, dans ma version de développement, j'ai créer des répertoires pour classé les VIs et sous VIs par appareils; et cela dans l'environnement de projet, mais aussi physiquement sur mon HDD. Par exemple, j'ai un répertoire "Spectro" qui contient la FGV, le VI de contrôle, et le VI d'affichage du spectromètre.
Il faut donc dans les options de génération de l'exécutable, toujours inclure les VI d'affichage dans l'exécutable : "source file", mais aussi ajouté un chemin absolu où l'exécutable pourra les trouver : "destination".
Par contre je rencontre toujours un problème de mise à jours des afficheurs pour la face avant d'un sous-VI qui se lance au démarrage du VI principale.