Créer un exécutable avec LabVIEW

Créer un exécutable avec LabVIEW

Plusieurs de nos clients ont éprouvé quelques difficultés à créer un exécutable depuis un projet LabVIEW utilisant la librairie Yoctopuce. Un problème de DLL introuvable. C'est pourquoi on vous propose cette semaine un petit tutoriel à ce sujet.





Avant toute chose, rappelons pour la forme que pour créer un exécutable avec LabVIEW vous aurez besoin de la version professionnelle de LabVIEW ou de l'option "LabVIEW Application builder". De plus, l'environnement LabVIEW runtime devra être installé sur l'ordinateur sur lequel vous comptez faire tourner votre exécutable.

Théorie

La librairie Yoctopuce pour LabVIEW est basée sur la DLL DotNetProxyLibrary.dll qui repose sur la DLL yapi.dll. Cette dernière existe en deux versions:

  • La version 32 bits qui doit se trouver dans le même répertoire que DotNetProxyLibrary.dll.
  • La version 64 bits qui doit se trouver dans le sous-répertoire amd64.

Cette structure doit impérativement être respectée, toute la difficulté consiste à le faire comprendre à LabVIEW.

Pratique

Voici donc, étape par étape, la marche à suivre pour que LabVIEW soit capable de compiler un projet tout en copiant les DLL Yoctopuce au bon endroit. Ce petit tutoriel est basé sur les versions anglaises de Windows et de LabVIEW, on vous laisse le soin de faire le parallèle avec les versions françaises.

Supposons que l'on ai un projet tout simple qui contienne un VI nommé "TempSensor" qui lit et affiche la température d'un capteur Yoctopuce.

Un VI pour lire et afficher la température d'un capteur Yoctopuce
Un VI pour lire et afficher la température d'un capteur Yoctopuce


Appelons ce projet Exe-demo, par défaut sa structure va ressembler à l'image ci-dessous.

Structure de base d'un projet LabVIEW
Structure de base d'un projet LabVIEW


Etape 1

Commençons par signaler à LabVIEW que le projet a besoin de DLL. Un clic droit sur le nœud my computer permet d'ajouter les fichiers yapi.dll et DotNetProxyLibrary.dll qui se trouvent dans le répertoire C:\Program Files\National Instruments\LabVIEW XXXX\vi.lib\Yoctopuce\VIs, si vous avez installé la librairie Yoctopuce avec l'installeur fourni.

Ajouter des fichiers au projet
Ajouter des fichiers au projet


Etape 2

Un nouveau clic droit sur le nœud my computer permet d'ajouter un répertoire virtuel que l'on va impérativement nommer amd64.

Ajouter un répertoire virtuel au projet
Ajouter un répertoire virtuel au projet


Etape 3

Ajoutons la version 64 bits de yapi.dll dans le répertoire que l'on vient juste de créer. Cette DLL se trouve dans le répertoire C:\Program Files\National Instruments\LabVIEW XXXX\vi.lib\Yoctopuce\VIs\amd64. La structure de votre projet doit maintenant ressembler à l'image ci dessous.

Structure du projet avec les DLL
Structure du projet avec les DLL


Etape 4

Il s'agit maintenant d'expliquer à LabVIEW comment il doit copier les DLL. Commençons par créer un nœud "Application (EXE)" sous le nœud "Build Specifications".

Ajoutons un nœud EXE
Ajoutons un nœud EXE


un clic droit sur le nouveau nœud permet d'en configurer les propriétés. Commençons par choisir un nom pour notre exécutable, en l’occurrence: MyTestExe.exe.

Configuration du nom de l'exécutable
Configuration du nom de l'exécutable


Etape 5

Signalons maintenant à LabView dans la section "Source files" qu'il doit copier les DLL DotNetProxyLibrary.dll,yapi.dll et le répertoire amd64.

Liste des fichiers à copier
Liste des fichiers à copier


Etape 6

Il s'agit maintenant d'expliquer à LabView comment il doit copier les DLL, pour cela on crée dans la section Destinations une nouvelle destination que l'on va appeler "YoctopuceDLL" et qui aura le même chemin de destination que l'entrée "Support Directory", mais avec la case "Preserve disk hierarchy" cochée.

Une Nouvelle destination
Une Nouvelle destination


Etape 7

On y est presque: dans la section "Source File Settings", on indique, pour les trois entrées amd64, DotNetProxyLibrary.dll et yapi.dll que l'on désire utiliser la destination "YoctopuceDLL".

On utilise la nouvelle destination pour les DLL
On utilise la nouvelle destination pour les DLL


C'est fini

Voilà c'est fini, vous pouvez maintenant contrôler que la compilation de votre projet produira la structure de fichiers attendue dans la section "Preview". Les fichiers DotNetProxyLibrary.dll, yapi.dll et amd64/yapi.dll sont censés se retrouver dans le sous-répertoire data.

Prévisualisation de la structure du projet
Prévisualisation de la structure du projet


Par contre, on n'a pas trouvé comment dire à LabVIEW qu'il n'était pas obligé de copier le fichier d'aide HTML de la libraire Yoctopuce.

Après une compilation on trouve dans le répertoire builds un fichier exécutable MyTestExe.exe, quelques fichiers annexes et un répertoire data que l'on pourra copier et lancer sur n'importe quelle machine pour peu que l'environnement LabVIEW runtime y soit installé.

Commenter aucun commentaire Retour au blog












Yoctopuce, get your stuff connected.