Intégration d'une DLL dans un executable

Bonjour,
c'est une question qui je sais à déjà été posée, cependant les réponses ne m'ont pas aidé à résoudre mon problème.
J'ai un dossier comprenant un .vi un projet et une .dll. Le projet contient ce .vi qui fait appel à cette .dll.
Lorsque je l'execute sur mon PC, pas de souci, tout fonctionne. 
Je souhaite en faire une application .exe avec le builder. 
Ma .dll n'apparait pas dans l'explorateur de projet onglet dépendance/.vi.lib
Du coup, lorsque je l'execute sur un autre PC, cela ne fonctionne pas.
Quelles sont les étapes pour inclure la .dll dans le projet puis dans l'application.
Bien à vous.

Bonjour,
Pour que ta dll puisse apparaitre, tu peux faire un clic droit sur Poste de travail dans ton projet LabVIEW et Ajouter >> Fichier, ou bien un faire un glisser-déposer.
Best Practices for Managing NI LabVIEW Applications Using the Project Explorer
J'espère que cela répond à ta question,
Bonne journée,
M-Junior

Similar Messages

  • Intégration d'une DLL générée sur Simulink dans un algorithme Labview, à finalité app temps réel sur NI myRIO

    Bonjour à tous,
    En deux mots : dans le cadre d'un projet interfacultés, je dois intégrer à mon algorithme Labview l'exécution d'un algorithme d'optimisation actuellement codé sur Simulink d'un tiers. La finalité de mon algorithme est de générer une app temps réel que j'exécute sur le matériel embarqué, NI myRIO.
    J'ai pu lire que justement il était possible d'intéragir entre Labview et Simulink, via le fait que Simulink permet de générer une DLL, et Labview de la lire/exécuter.
    Mes questions sont :
    Est-ce tout-à-fait envisageable dans mon optique d'app temps réel sur myRIO ? (Par exemple, l'exécution de la DLL pourra-t-elle se faire en parallèle du reste mon algorithme Labview (autres acquisitions de données, etc))
    Quid du toolkit NI Labview model interface ? Est-il indispensable de l'acquérir (et si oui pourquoi) ?
    Je sais qu'il est possible de réécrirer directement sur Labview des algorithmes d'optimisation (ici, du MPC), mais ce serait à priori la dernière option envisagée.

    Bonjour,
    Le MIT est la seule option non-obsolète pour exécuter des modèles Simulink dans LabVIEW. Et si tant est que vous utilisez MIT 2014 (avec LabVIEW 2014), vous pourrez exécuter votre modèle Simulink sur le myRIO.
    Les bases pour que tout fonctionne se trouvent ici :
    - http://digital.ni.com/public.nsf/allkb/E552B0CD4E48215586257DF7005BE055?OpenDocument
    Cordialement,
    Eric M. - Application Engineering Specialist
    Certified LabVIEW Architect
    Certified LabWindows™/CVI Developer

  • Intégration présentation Flash dans une page web

    Bonjour,
    j'ai utilisé Indesign  pour intégrer une présentation SWF dans une page web d'un site créé avec Muse.
    Il s'agit en fait d'un livre comportant des pages en vis-à-vis, une page: première de couverture et une page: quatrième de couverture. La première de couverture est la page n°1 dans indesign, elle est donc unique puisque les autres pages sont toutes en vis-à-vis sauf la page de fin: la quatrième de couverture qui se trouve à gauche dans indesign.
    Le fichier a été exporté en SWF pour pouvoir le visualiser sur le site comme on feuillette un livre page par page.
    Mon soucis se situe sur la page première de couverture. En fait, sur le web, lorsque le fichier apparait à l'écran la première de couverture est bien à droite, mais à sa gauche il y a également un fond de page qui apparait, ce que je ne souhaiterais pas!!! idem pour la quatrième de couverture.
    En fait j'ai vu sur le web des présentations identiques qui ne présentaient pas ce défaut ex: http://www.ffve.org/doc/authentique18/index.html
    Existe-t-il une solution?

    Dans la version cs6, on peut choisir un mode transparent, mais celui-ci supprime le coin de page interactif.
    Il serait cependant possible d'utiliser tout simplement un fond correspondant à votre site (au plus proche, car je crains que le dégradé ne soit pas évident à reproduire précisément), tout simplement en démarrant l'ouvrage sur une page de gauche (définir dans le panneau page les options de numérotation et de section)
    J'ai trouvé dans un autre post un exemple qui est assez élégant mais très gourmand en ressources : http://demo.quietlyscheming.com/book/Anatomy.html et visiblement non réalisé dans inDesign, mais directement dans flash.

  • Associer une dll à un projet et executer un programme appelant sans mettre la dll dans VXI pnp

    Bonjour
    Je souhaiterai exécuter un programme appelant une dll que j'ai compilé et que j'ai lier à l'exécutable mais pas placé dans VXI pnp.
    La compilation se passe bien mais lorsque je lance l'application, un message apparaît et indique que la dll est intraouvable j'ai inclut le chemin du dossier dans lequel est stocké la DLL dans les include path mais sans succès.
    Merci d'avance pour votre aide

    Bonjour,
    Merci d'avoir posté votre question sur le forum de National Instruments.
    Pourvez-vous m'envoyer votre code?
    Brice S.
    National Instruments France

  • Intégration en attente des PDF dans Adobe Help Manager

    Sur le Creative Cloud (version MAC 10.6.8), dans Adobe Help Manager, il m'est impossible de mettre à jour les documentations PDF qui sont obsolétes, elles se téléchargent mais la fenêtre reste bloquée au stade de l'intégration en attente avec le message :
    Même au bout de plusieurs heures pas de changement, par conséquent impossible de mettre les documentations PDF en local.
    Quelqu'un aurait-il une idée du problème ?

    Bonjour,
    Notre équipe de documentation vient d'ajouter la date aux guides de références de nos différents produits pour CS6.
    Voici quelques examples (dans différentes langues):
    http://help.adobe.com/archive/fr/photoshop/cs6/photoshop_reference.pdf
    http://help.adobe.com/archive/de/after-effects/cs6/after_effects_reference.pdf
    http://help.adobe.com/archive/es/premiere-pro/cs6/premiere_pro_reference.pdf
    http://help.adobe.com/archive/jp/audition/cs6/audition_reference.pdf
    Je sais que ce n'est pas encore optimal - car comme Pierre-Etienne l'a indiqué, il est toujours mieux de savoir le time stamp de la version avant de télécharger le document. Je discute avec l'équipe Adobe Help Manager pour voir comment l'on peut adresser ce problème.
    Mais, il s'agit tout de même d'un pas dans la bonne direction.
    Cordialement,
    --Jean-François.

  • Possibilité de passage d'une structure C d'une dll appelée dans Labview

    Bonjour, 
    J'aimerais savoir s'il existe un moyen de passer une structure (type de donnée en C) au
    travers de la  boîte de dialogue : "Appeler une fonction d'une
    DLL" pour l'utiliser dans Labview (idéalement sauver directement dans un
    cluster).
    A ce jour j'utilise des pointeurs sur les paramètres individuels pour passer les
    données traitées par ma DLL. 
    Exemple : void  Message(uint32_t *arg1, double *arg2, int32_t arg3)
    En vous remerciant d'avance,
    Meilleures salutations.

    Bonjour,
    En effet, il existe un moyen de passer un cluster dans une DLL en utilisant le type de données "Adapt to Type".
    Il existe une knowledgeBase sur le site de National Instruments expliquant la procédure à suivre.
    How Do I Use Adapt To Type For Call Library Function Nodes?
    Salutations,
    Laurent P.
    Application Engineer
    National Instruments

  • Lire la valeur retournée par une fonction (DLL) dans Pass/Fail test

    Bonjour,
    comme le titre l'indique je charche à tester une fonction en l'appelant d'une DLL (en C) en utilisant le Pass/Fail test. La fonction retourne la somme entre deux entier x et y.
    Quel sont les étapes à suivre et surtout comment je peux récupérer la valeur retournée et faire un teste sur elle!!
    Que dois-je écrire dans la rubrique "Data Source"...
    Vous trouvez ci-joint une idée de ce que j'ai fait..
    merci pour votre réponse
    Pièces jointes :
    PassFail.JPG ‏94 KB

    La question n'est pas très claire...
    Disons que si le but est de vérifier si la valeur est entre certaines bornes ex: 10<x<15 ou x<20 par exemple, alors il faut utiliser un "numericlimit test" 
    Pour réutiliser une valeur (variable) dans TestStand, le plus simple est de l'assigner à une variable locale dans TestStand. (Même méthode qu'en haut mais remplacer l'expression par Locals.MaVariable )
    Rodéric L
    Certified LabVIEW Architect

  • Appel d'une dll avec un callback d'une autre fonctionappel d'une dll avec un callback d'une autre fonction

    Bonjour.
    J'ai une carte d"acquisition vidéo dont je souhaite réaliser les
    drivers sous labview. Une DLL est fournie avec le manuel SDK
    d'utilisation.
    Mais je coince à ce niveau :
    Register Draw callback function: RegisterDrawFun()
    API:
    int RegisterDrawFun(DWORD nport, DRAWFUN(DrawFun), LONG nUser)
    Parameters:
    DWORD nport Channel Index
    DRAWFUN(DrawFun) callback function
    LONG nUser user data
    Callback function explanation:
    void CALLBACK DrawFun(LONG nPort,HDC hDc,LONG nUser)
    nPort channel number
    hDc devide context of offscreen surface is similar to the DC of display window
    nUser user data
    Return Values:
    If the function succeeds, the return value is 0.
    Remarks:
    When the video is previewed with offcreen mode, the
    application call this function to get the device context of offscreen
    surface so that the application can draw lines, strings, rectangles on
    the surface of video.
    C'est le callback de la fonction "drawfun"  que je ne sais pas mettre
    en oeuvre. Et dans quelle DLL de windows ce trouve cette fonction car
    elle n'est pas dans la DLL fournie.
    Pourriez vous aussi me dire , comment obtient t'on le "handle" d'une
    valeur contenu dans un indicateur pour le donner en argument d'un appel à
    une DLL.
    Merci d'avance pour votre aide.
    Cordialement,
    MH.

    Salut,
    Tu dois utiliser un "Call Library Function Node".  Je ne saurais comment traduire en francais. 
    Ca se situe a l'interieur des fonctions de connectivite sous libraries et executables.
    Lorsque tu installes le "Call Library Function Node" sur ton diagramme, tu dois par-apres le configurer.
    Tu cliques (2x) sur l'icone et tu choisi la fonction dll auquel tu veux envoyer des valeurs.  Une fois choisi, tu peux joindre les parametres.

  • Recupérer les valeur d'un Control via un .obj appelé depuis une DLL- Getting a Control value from an .obj file called from a dll

    Bonjour,
    Suite au passage à la version CVI 2013, il faut passer par un fichier .obj au lieu du .c quand on veut utiiser la LoadExternalModule.
    Le pb qui en résulte impossibilité de récupérer la valeur des control dans l'uir géré par le .obj qui est appelé par une dll.
    Autrement, il m'est impossible de faire parvenir à la dll les valeur des control ( dll qui appelle le .obj).
    Quelqu'un a eu le même soucis amigos?
    Merci
    Hi,
    When using the LoadExternalModule function in CVI 2013, we can no longer use a .c file. Instead we have to use an .obj file.
    My issue is that' impossible for me to get a control value from an .iur managed by the .obj witchi is called by a dll. 
    Otherwise it's impossible for me to get the control vale when calling the .obj from a dll.
    Any suggestions Amigos
    Thanks

    For people who could be interested in, here the code I provided to the customer. This code demonstrates that calling a function defined in a .obj file from a DLL which is called itself by a program can be realized without throwing any error.
    In order to use this example, you will have to :
    1) Open "main.cws"
    2) Define "Madll" as Active Project (right clic on the project and click on "Set Active Project")
    3) Build the DLL (CTRL+M)
    4) Define "Main" as Active Project
    5) Click on "Debug Project" in order to build the executable and run it
    This example has been built with CVI 2013.
    Jérémy C.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Travaux Pratiques d'initiation à LabVIEW et à la mesure
    Du 2 au 23 octobre, partout en France
    Attachments:
    main.zip ‏70 KB

  • Formalisme Donnée pour appel d'une DLL

    Bonjour à tous,
    Je suis confronté à un problème dans le cadre de l'utilisation d'une DLL externe, je n'arrive pas à formaliser les données sous labview pour qu'elle soit correctement interprété par la dll via un noeud d'appel externe.
    Les informations fournies par les fichiers d'entête sont les suivantes :
    /** \brief Permet de lire et vérifier l'EEPROM BARTON HILL */
    EXPORT int EEPROM_BARTONHILL_CheckRead(FATHANDLE fatHandle, Read_EEPROM_BARTONHILL* data);
    /** \brief parametres de la lecture de l'EEPROM BARTON HILL */
    typedef struct
    char errorCode; /** \brief code erreur de la requete */
    char refFile[FILENAME_SIZE]; /** \brief Chemin et nom du fichier de reference */
    char maskFile[FILENAME_SIZE]; /** \brief Chemin et nom du fichier de mask */
    unsigned int testResult; /** \brief Nombre d'octet different de la reference */
    } Read_EEPROM_BARTONHILL;
    /** \brief Taille maximum en octets du chemin d'un fichier */
    #define FILENAME_SIZE 50
    Sous python, elles sont interprétées de la manière suivante :
    class Read_EEPROM_BARTON(Structure):
    _pack_ = 1
    _fields_ = [("errorCode", c_byte),
    ("refFile", c_char*50),
    ("maskFile", c_char*50),
    ("result", c_uint),
    J'arrive à faire fonctionner correctement cette bibliothèque sous Python, mais je n'arrive pas à mettre en forme correctement les chaines de caractères pour que labview les interprètes correctement. Il s'agit de lien relatif vers un fichier.
    Comment faire pour que labview interprète correctement les pointeurs inclus dans la structure, je pense avoir utiliser quasiment toutes les possibilités du noeud d'appel sans succès.
    Je vous remercie d'avance pour vos réponses.
    Cordialement,
    Michael.

    Bonjour Eric,
    Merci de ta réponse.
    Comme tu l'as signalé, j'ai bien réaliser l'appel à DLL avec un cluster, en configurant le noeud de méthode en "Adapter au type".
    A partir de là, j'ai tester de les configurations possibles (handle par valeur, pointeur sur les handles, .....), rien n'y fait la dll me retourne un code d'erreur me signalant que mes paramètres sont non valides.
    Quand tu parles de préallouer les chaines de caractères, tu signifies quoi ?
    Pour ma part, j'ai forcé la taille des chaines de caractères à 50 via deux méthodes (soit avec la fonction formater chaine qui force la taille de la chaine résultat à 50, soit en passant par un tableau de U8 redimensionner).
    Je pense que mon problème vient justement de la gestion des chaînes de caractères, mais je ne vois pas le problème dans ma gestion.
    Cordialement,
    Michael

  • Appel d'une dll avec un callback d'une autre fonction

    Bonjour.
    J'ai une carte d"acquisition vidéo dont je souhaite réaliser les drivers sous labview. Une DLL est fournie avec le manuel SDK d'utilisation.
    Mais je coince à ce niveau :
    Register Draw callback function: RegisterDrawFun()
    API:
    int RegisterDrawFun(DWORD nport, DRAWFUN(DrawFun), LONG nUser)
    Parameters:
    DWORD nport Channel Index
    DRAWFUN(DrawFun) callback function
    LONG nUser user data
    Callback function explanation:
    void CALLBACK DrawFun(LONG nPort,HDC hDc,LONG nUser)
    nPort channel number
    hDc devide context of offscreen surface is similar to the DC of display window
    nUser user data
    Return Values:
    If the function succeeds, the return value is 0.
    Remarks:
    When the video is previewed with offcreen mode, the application call this function to get the device context of offscreen surface so that the application can draw lines, strings, rectangles on the surface of video.
    C'est le callback de la fonction "drawfun"  que je ne sais pas mettre en oeuvre. Et dans quelle DLL de windows ce trouve cette fonction car elle n'est pas dans la DLL fournie.
    Pourriez vous aussi me dire , comment obtient t'on le "handle" d'une valeur contenu dans un indicateur pour le donner en argument d'un appel à une DLL.
    Merci d'avance pour votre aide.
    Cordialement,
    MH.

    Dupliqué >> http://forums.ni.com/t5/LabVIEW/appel-d-une-dll-av​ec-un-callback-d-une-autre-fonctionappel-d-une/m-p​...

  • [Labwindows/CVI] Integration d'une DLL VC++

    Bonjour à tous,
    J'ai une DLL VC++ avec le .h et le .lib et je n'arrive pas à l'integrer correctement dans un projet CVI.
    dans le .h j'ai une fonction declaré comme suite
    GET_TX(const int FreqMhz, double& resultsevm);
    Labwindows n'accepte pas le passage par reference (double&) donc j'ai modifier la declaration comme suite à fin de l'integrer
    GET_TX(const int FreqMhz, double *resultsevm);
    c'est vrai que j'ai pas d'erreur de compilation suite a cette modif, mais il me semble que la valeur resultsevm retourné par la DLL pas correcte (valeur tres grand % au valeur attendu ) !!!
    Pouvez-vous m'expliquer comment faire pour integrer la dll correctement ?
    si non comment loader la dll dynamiquement ?
    merci d'avance

    Bonjour Tanite, et bienvenue sur le forum de discussins de National Instruments.
    Voici deux documents qui pourraient éventuellement vous aider à utiliser votre DLL dans votre projet CVI :
    1. Creating Import Libraries for a DLL in LabWindows/CVI
    2. FAQ: Using Dynamic Link Libraries with LabWindows/CVI
    Cordialement,
    Vincent.O
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Été de LabVIEW 2014
    12 présentations en ligne, du 30 juin au 18 juillet

  • Passer un tableau à une dll labview

    Bonjour
    J'ai créé une dll labview avec une methode qui sert à passer un tableau de double.
    Quand je passe mon tableau , j'ai une erreur memoire insufissante et ça ne fonctionne pas. je joints mon code et le projet de la dll
    la methode : labview dll_tableau
    le client de test pour la dll : test dll.vi
    question annexe : comment fait on pour débugger une dll en labview?
    Merci
    Attachments:
    test.zip ‏808 KB

    Bonjour,
    J'ai essayé de faire fonctionner votre programme. En appelant le programme test dll.vi j'obtiens bien une erreur de mémoire insuffisante. En revanche je ne comprends pas l'intérêt de la structure séquence, ni celui des différentes étapes. En n'utilisant uniquement l'étape n°2, cette erreur de mémoire n'intervient plus. Je n'ai pas été plus loin dans les tests. Aussi, à quoi de servent les différentes étapes de cette structure?
    Bonne journée,
    M-Junior

  • Intégrer un lecteur audio dans businesscatalyst

    bonjour , intégrer un lecteur video est simple , il suffit de créer un iframe et de mettre son sujet video en 4 ou 5 formats dans un mini site index.html, ce qui pour le HTML 5 est tout a fait adapté et easyhtml5 fait cela tres bien
    mais comment faire pour intégrer un lecteur audio ou en tout cas pour lire un fichier audio d'ambiance ( et permettre de l'arrêter ou de le muter ) ?  ( à part youtube qui n'est pas tout à fait pour cela .. )
    car à ma connaissance  nous n'avons pas accès au serveur de businesscatalyst et donc impossible d'y uploader un JSplayer ou autre ? 
    merci de votre réponse rapide et merci pour les développeurs MUSE qui vont nous concocter d'ici peu un superbe intégrateur audio et video  .. N'EST_CE PAS ?    c'est tellement simple  à faire avec WEBACAPPELLA !!! 

    je viens d'essayer differentes méthode pour inserer un son
    mettre mon audio sur youtube avec une image noire et copier le code d'intégration dans un cadre HTML : l'application quitte apres avoir mouliné 3 secondes.
    mettre mon film idem sur mon ftp en version Html5 ( créé avec easyhtml5 donc en 5 codages différents)
    et inserer ce code d'iframe dans une fenetre HTML5 sur MUSE :
    <body>
    <iframe src="http://example-link.web" width="156px" height="144px" frameborder="1"></iframe>
    </body>
    l'application quitte apres avoir mouliné 3 secondes donc je présume que c'est à cause de businesscatalyst car sur un autre projet pour lequel je n'utilise pas businesscatalyst tout ceci fonctionne parfaitement
    merci pour votre réponse , c'est urgent je voudrais ajouter du son à mon site http://royalheritage02.businesscatalyst.com au plus vite 

  • Appli Android // Intégration d'icones personnalisées // Plantage de Flash

    Bonjour,
    Flash plante pendant la publication après intégration des icônes personnalisées dans l'onglet "ICONES" et FICHIERS INCLUS" des paramétres de publication (PNG transparent).
    La version sans icônes fonctionne parfaitement.
    Quelqu'un a t il une idée a ce sujet ?
    Merci
    je précise.
    Je travaille sur Flash CC. Donc quand je publie mon application (.apk, Android) 
    > Paramètres de publication > Cible AIR 14 for Android, AS3
    > J'intègre mes icônes personnalisées (PNG)
    > J'inclus mes fichiers icônes (Onglet Général)
    > Je publie mon application
    > ET PENDANT LA PUBLICATION, FLASH PLANTE
    Je précise que la publication avant intégration des icônes ne pose aucun problème. J'en déduit que ce plantage est causé par l'intégration des icônes.
    Merci de votre aide

    Bonjour,
    Je ne peux pas répondre en détail mais une chose est certaine : pour publier une app sur l'App-Store il faut un Mac.
    Apple fait tout ce qui est en son pouvoir pour rendre cette exigence incontournable.
    Je ne sauis pas quelles bidouilles sont conseillées pour passer outre mais souvent il ne faut pas chercher plus loin.

Maybe you are looking for

  • Installation of Oracle APPS 11 on Windows XP Professional

    Dear all, I downloaded all the zip files needed for Oracle APPS 11 from edelivery.oracle.com Now I'm trying to install the package but I get stuck on an error. I already installed DeVC++ (in folder C:\VC98) and installed ActivePerl. During rapidwiz a

  • Download adobe flash player addon

    adobe flash player doesn't download from http://get.adobe.com/flashplayer. it stops midway and does not respond with neither through firefox nor through bit comet.

  • Quality loss when merging files using QT7

    I used QT7 to merge two video files using the suggested method of selecting all of the second file and pasting into end of first file. Worked fine, but the new file is barely larger than the first. Am I losing quality? 25MB + 15MB = 26MB instead of 4

  • Address book has triple entries on after updating to cloud. How do I fix this?

    my address book in my phone has triple entered all addresses after I have joined the cloud with the new 4s iphone. How do I fix this?

  • Itune - How to Group Different Artist into Same Ablum

    I have a collection type Album - has all different artist I would like to the songs to show up in an single cover flow so when i go to cover flow view - there is only 1 album not multiple right now i have 7 album in cover flow for that collection -th