Chemin d'accès DLL [Résolu]

Signaler
Messages postés
13
Date d'inscription
jeudi 10 juillet 2008
Statut
Membre
Dernière intervention
10 août 2009
-
Messages postés
13
Date d'inscription
jeudi 10 juillet 2008
Statut
Membre
Dernière intervention
10 août 2009
-
Bonjour,

Je recherche un moyen afin de pouvoir indiquer le chemin d'accès de ma dll en fonction du répertoire courant.

Je m'explique.
Actuellement je déclare le chemin d'accès en dur (la racine de D:). Et je voudrais, par l'intermédiaire d'une variable récupérer le dossier courant, et lui indiquer qu'il doit chercher la dll dans ce dossier.
Je me suis renseigné un peu et j'ai trouvé quelques indications sur la méthode SetDllDirectory(), mais je ne m'en sors pas.

Si vous avez une idée.

Merci d'avance

12 réponses

Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
mets ta dll dans un de ces répertoires

Bonjour chez vous !
Messages postés
13
Date d'inscription
jeudi 10 juillet 2008
Statut
Membre
Dernière intervention
10 août 2009

Ca marche!

Merci!
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Parles-tu réellement du dossier courant ou plutôt du dossier d'installation de l'appli, celui ou il y a l'exécutable. Ce sont 2 choses totalement différentes.

Pour le dossier de l'appli, en VB6, c'est App.Path

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
13
Date d'inscription
jeudi 10 juillet 2008
Statut
Membre
Dernière intervention
10 août 2009

En fait je travaille sous Excel et je code en VBA.
Dans ce code, je fais appel à une DLL C++ de la facon suivante:

Declare Function dllPlot Lib "D:/Ma.dll" _
           (ByRef Data As Double, ByVal taille As Long, _
            ByVal Min As Double, ByVal Max As Double, _
            ByVal NbPts As Long, ByRef graphX As Double, _
            ByRef graphY As Double) As Long

J'aimerai ne pas utiliser le chemin "D:/ModuleBacktesting.dll", mais plutot lui rentrer:

   Lib Mon_chemin_d'accès + "Ma.dll"

Avec Mon_chemin_d'accès le chemin d'accès de mon fichier Excel.

Tu penses que c'est faisable??

Merci
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Dans ce cas non, ce n'est pas faisable sauf à mettre la dll dans System32 et ne pas spécifier de chemin
(et encore, pas certain que ça marche avec des dlls autres que celles de l'OS)

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
13
Date d'inscription
jeudi 10 juillet 2008
Statut
Membre
Dernière intervention
10 août 2009

Ok.

Merci quand même pour la réponse!
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
normalement

le systeme cherche ses dll dans system32 , le path puis dans le repertoire en cours

Bonjour chez vous !
Messages postés
13
Date d'inscription
jeudi 10 juillet 2008
Statut
Membre
Dernière intervention
10 août 2009

Ca je suis d'accord.
Mais est-ce que tu connais la syntaxe pour accedér à une dll? (autre qu'avec le chemin d'accès en dur )
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
Declare





Function

dllPlot


Lib





"Ma.dll"

(


ByRef

Data


As





Double

,


ByVal

taille


As





Long

, _



ByVal

Min


As





Double

,


ByVal

Max


As





Double

, _



ByVal

NbPts


As





Long

,


ByRef

graphX


As





Double

,


ByRef

graphY


As





Double

)


As





Long


pas de path dans le declare MAIS
plutot mettre ta dll dans le %PATH%

Bonjour chez vous !
Messages postés
13
Date d'inscription
jeudi 10 juillet 2008
Statut
Membre
Dernière intervention
10 août 2009

Qu'est ce que tu entends par %PATH%??
Messages postés
3275
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
4
la variable d'environement  PATH

ouvres une console avec la commande cmd.exe
ensuite tapes path et tu verras ce que c'est

Bonjour chez vous !
Messages postés
13
Date d'inscription
jeudi 10 juillet 2008
Statut
Membre
Dernière intervention
10 août 2009

Je viens de le faire mais ca ne m'avance pas!!!
Qu'est ce que c'est?
Et en quoi cela peut m'aider?

Merci