Comment définir le chemin vers un fichier DLL dans Visual Studio?

j'ai développé une application qui dépend d'un fichier DLL. Lorsque je debug ma demande, la demande se plaindrait que:

" cette demande n'a pas commencé parce que xxx.dll il n'a pas été retrouvé."

donc je dois copier le fichier DLL dans le même répertoire que le mien .vcproj fichier.

Est-il un moyen de définir le projet pour rechercher le fichier DLL (de préférence) certains chemin relatif ou (non préféré) chemin absolu?

concept similaire à la façon dont nous définissons inclure et chemin de la bibliothèque dans les paramètres du projet.

je veux dire quand je debug ma demande (en tapant F5 ) l'erreur ci-dessus apparaîtrait.

106
demandé sur Peter Mortensen 2010-01-22 21:33:26

5 réponses

  1. Allez à propriétés de projet (Alt+F7)
  2. sous débogage, regardez à droite
  3. il y a un champ environnement.
  4. ajoutez votre chemin relatif (relatif au dossier vcproj) i.e. ..\quelques-framework\lib en ajoutant PATH=%PATH%;$(ProjectDir)\some-framework\lib ou en ajoutant le chemin PATH=C:\some-framework\lib;%PATH%
  5. appuyez sur la touche F5 (debug) de nouveau et cela devrait fonctionner.
156
répondu sivabudh 2013-04-24 21:23:04

le chemin de recherche que le chargeur utilise lorsque vous appelez LoadLibrary() peut être modifié en utilisant la fonction SetDllDirectory () . Vous pouvez donc simplement appeler ceci et ajouter le chemin à votre dépendance avant de le charger.

voir aussi DLL ordre de recherche .

7
répondu i_am_jorf 2010-01-22 19:42:51

Passer par les propriétés du projet -> Référence Chemins

puis ajouter le dossier avec DLL

6
répondu kravits88 2015-09-02 23:10:47

une autre possibilité serait de définir le Working Directory sous les options de débogage pour être le répertoire qui a cette DLL.

Edit: j'allais mentionner l'utilisation d'un fichier batch pour démarrer Visual Studio (et définir la variable PATH dans le fichier batch). Alors a fait un peu de recherche et de voir que cette même question a été posée il n'y a pas longtemps dans ce post . La réponse suggère l'option de fichier par lot ainsi que les paramètres de projet qui apparemment peut faire l'affaire (je n'ai pas testé).

3
répondu Mark Wilkins 2017-05-23 10:31:30

je sais que cette question a été résolue il y a des années, mais pour ceux comme moi qui avaient besoin de changer l'endroit où le débogueur démarre l'application, changez la propriété de commande sous Propriétés du projet -> débogage.

-1
répondu TheOriginalCole 2016-08-31 13:14:21