Inclure une bibliothèque
Résolu/Fermé
kvjld35
Messages postés
22
Date d'inscription
jeudi 12 mai 2016
Statut
Membre
Dernière intervention
13 juin 2016
-
12 mai 2016 à 09:27
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 - 12 mai 2016 à 17:14
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 - 12 mai 2016 à 17:14
A voir également:
- Cette bibliothèque n'est pas disponible pour le partage familial
- Cette personne n'est pas disponible sur messenger - Guide
- Partage photo - Guide
- Cette fonction n'est pas disponible actuellement tv lg - Forum Téléviseurs
- Le téléphone de votre correspondant n'est pas disponible actuellement ✓ - Forum Mobile
- Partage d'écran whatsapp - Guide
1 réponse
[Dal]
Messages postés
6174
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
2 février 2024
1 083
Modifié par [Dal] le 12/05/2016 à 11:15
Modifié par [Dal] le 12/05/2016 à 11:15
Bonjour kvjld35,
Tout d'abord, je n'utilise pas LabWindows/CVI, mais comme ta question ne reçoit pas de réponse d'utilisateurs de cet environnement (si tant est qu'il y en ait sur le forum), je me permets de t'apporter des éléments de réponse.
D'après la description de l'éditeur "LabWindows/CVI is an ANSI C integrated development environment and engineering toolbox with built-in libraries for measurement, analysis, and engineering".
Le C standard ANSI ne dispose pas de fonctions pour créer des répertoires.
<sys/stat.h> est un entête (pas une "bibliothèque") POSIX (Unix, BSD, Linux...) et cet entête est donc disponible sur les compilateurs C pour les systèmes POSIX, pas sur les compilateurs ANSI C.
https://pubs.opengroup.org/onlinepubs/009695399/functions/mkdir.html
Une recherche montre cependant que National Instruments semble avoir créé une fonction
https://zone.ni.com/reference/en-XX/help/370051T-01/cvi/libref/cvimakedir/
Alternativement, il semble qu'un accès à l'API Windows soit possible avec LabWindows/CVI avec ce qu'ils appellent le "Platform SDK" fournit avec LabWindows/CVI
https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019MNESA2
Si tel est le cas, tu peux aussi tenter d'utiliser la fonction
https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/mkdir-wmkdir?redirectedfrom=MSDN&view=msvc-160&viewFallbackFrom=vs-2019
Cette fonction est une version adaptée inspirée de la version POSIX.
Ou tenter d'utiliser la méthode Windows recommandée sous Windows en utilisant la fonction
disponible si tu inclues l'entête <windows.h> normalement disponible sous Windows
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-createdirectorya?redirectedfrom=MSDN
Enfin, tu peux aussi poser ta question sur les forums de National Instruments (en langue anglaise), où tu trouveras certainement plus d'aide qu'ici, par des gens utilisant cet environnement de programmation.
Dal
Tout d'abord, je n'utilise pas LabWindows/CVI, mais comme ta question ne reçoit pas de réponse d'utilisateurs de cet environnement (si tant est qu'il y en ait sur le forum), je me permets de t'apporter des éléments de réponse.
D'après la description de l'éditeur "LabWindows/CVI is an ANSI C integrated development environment and engineering toolbox with built-in libraries for measurement, analysis, and engineering".
Le C standard ANSI ne dispose pas de fonctions pour créer des répertoires.
<sys/stat.h> est un entête (pas une "bibliothèque") POSIX (Unix, BSD, Linux...) et cet entête est donc disponible sur les compilateurs C pour les systèmes POSIX, pas sur les compilateurs ANSI C.
https://pubs.opengroup.org/onlinepubs/009695399/functions/mkdir.html
Une recherche montre cependant que National Instruments semble avoir créé une fonction
int MakeDir (char directoryName[]);pour leur compilateur, accessible par un entête <utility.h>.
https://zone.ni.com/reference/en-XX/help/370051T-01/cvi/libref/cvimakedir/
Alternativement, il semble qu'un accès à l'API Windows soit possible avec LabWindows/CVI avec ce qu'ils appellent le "Platform SDK" fournit avec LabWindows/CVI
https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019MNESA2
Si tel est le cas, tu peux aussi tenter d'utiliser la fonction
int _mkdir(const char *dirname);disponible normalement sous Windows par l'entête <direct.h>
https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/mkdir-wmkdir?redirectedfrom=MSDN&view=msvc-160&viewFallbackFrom=vs-2019
Cette fonction est une version adaptée inspirée de la version POSIX.
Ou tenter d'utiliser la méthode Windows recommandée sous Windows en utilisant la fonction
BOOL WINAPI CreateDirectory( _In_ LPCTSTR lpPathName, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes );
disponible si tu inclues l'entête <windows.h> normalement disponible sous Windows
https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-createdirectorya?redirectedfrom=MSDN
Enfin, tu peux aussi poser ta question sur les forums de National Instruments (en langue anglaise), où tu trouveras certainement plus d'aide qu'ici, par des gens utilisant cet environnement de programmation.
Dal
12 mai 2016 à 11:44
De plus tu m'as bien éclairé sur les bons termes à employer et sur les raisons de mon problème.
Comment as-tu réussi à trouver cette fonction si je puis me permettre ? Cela me permettra d'être plus autonome pour la suite ;)
Modifié par [Dal] le 12/05/2016 à 16:59
Je ne me souviens pas exactement, mais pour MakeDir(), (après m'être documenté brièvement sur LabWindows/CVI), je pense que j'ai cherché "LabWindows/CVI create directory" dans Google (sans les guillemets) et je suis tombé sur une discussion de forum qui parlait de MakeDir, puis j'ai cherché à obtenir la documentation officielle de LabWindows/CVI sur cette fonction, en cherchant "LabWindows/CVI MakeDir" dans Google (toujours sans les guillemets).
La recherche sur ni.com avec leur moteur de recherche n'est pas aussi performante que celle de Google pour une pêche aux infos, mais une fois que tu sais ce que tu cherches, https://www.ni.com/en-us/contact-us.html peut te permettre de trouver la documentation concernant la version particulière de ton produit.
Par exemple, leur moteur (qui cherche cependant dans tous les produits NI et peut générer du bruit) permet de trouver https://zone.ni.com/reference/en-XX/help/370051AC-01/cvi/libref/cvimakedir/ qui est la page de documentation pour la version 2015 de LabWindows/CVI (celle que j'avais trouvée directement avec Google était pour la version 2010).
Pour le reste, mon post est une synthèse de mes connaissances et de recherches faites sur de multiples pages.
Bon courage pour ton projet.
Dal
12 mai 2016 à 17:01
Bonne continuation à toi !
Modifié par [Dal] le 12/05/2016 à 17:14
Si je devais faire un projet substantiel, je trouverai une documentation de référence fiable.
Leur documentation est accessible sur le site sous la forme d'un fichier .zip, contenant plusieurs mégaoctets d'infos :
https://www.ni.com/en-us/support/documentation.html/f
https://www.ni.com/en-us/support/documentation.html/f (pour la version 2015)
Si j'étais toi, je téléchargerais la version qui me correspond et j'irais chercher le fameux "in-depth function reference for LabWindows/CVI libraries" dont ils parlent.
Dal