Dll introuvable

Résolu
Signaler
Messages postés
13
Date d'inscription
mardi 24 août 2004
Statut
Membre
Dernière intervention
10 mai 2006
-
Messages postés
13
Date d'inscription
mardi 24 août 2004
Statut
Membre
Dernière intervention
10 mai 2006
-
Bonjour @ tous.

Dans un programme réalisé sous Visual Basic, je déclare la fonction de ma dll de la sorte :
Private Declare Sub EnregistrerExpedition Lib "RobustInterbase.dll" (paramètres)

Sur mon poste (WIN XP + Visual Basic) lors de l'éxécution du programme je ne rencontre aucun problème.
Sur le serveur (WIN NT 4) sur lequel je dois installer mon programme, je reçois un message d'erreur comme quoi la dll n'est pas trouvée.

Et pourtant :


<LI>Je déclare la dll exactement comme un autre dll appellée par le programme
<LI>Je mets ma dll dans le même répertoire que celui ou se trouve l'autre DLL
<LI>Je décide donc de mettre le chemin de la dll en dur dans le code mais il ne la trouve toujours pas; ex : "E:\RobustInterbase.dll" est introuvable alors que cette dernière est bel et bien présente dans le répertoire !</LI>
L'utilisateur est un super admin.
Bref impasse totale.

Merci d'avance pour votre aide.

Merci de votre aide.

5 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Combient de fois faudra-t-il le dire ?

majnounmajda, ajouter les dll dans les références c'est valable pour des dll activeX, pas pour les dll classiques.
Pour les dll classiques, c'est bien par les instructions Declare qu'il faut passer.

Annakin, ton problème est bien étrange effectivement.

Sur ton poste XP es-tu sur que ton programme va chercher la dll au bon endroit? tu n'aurais pas une copie dans le répertoire windows ou dans le répertoire system32 par hasard ? Il se pourrait que ta dll ne soit pas reconnue comme une dll et que en fait tu tourne sur une copie qui se trouve ailleurs.

Sinon je vois pas trop le problème.

3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
516
Date d'inscription
samedi 3 février 2001
Statut
Modérateur
Dernière intervention
24 octobre 2006
1
Hello, est-ce que par hazard ta dll RobustInterbase.dll n'utiliserais pas elle même une dll qui serait introuvable (non-présence, mauvais dossier). As tu essayé de mettre ta DLL dans le même dossier que le programme ?

Cordialement,


Warning
Admin Codes-Sources.com
http://www.decompiler-vb.net/
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
13
Date d'inscription
mardi 24 août 2004
Statut
Membre
Dernière intervention
10 mai 2006

Bonjour @ tous.

J'ai résolu mon problème.

En fait, ma dll créée sous Delphi appelait (indirectement) 2 autres dll distribuées par Borland.
Je l'ai aussi rajoutée dans les références puisqu'il s'agit d'une DLL Active X.

Merci encore @ tous.
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 109 internautes nous ont dit merci ce mois-ci

Messages postés
13
Date d'inscription
mardi 24 août 2004
Statut
Membre
Dernière intervention
10 mai 2006

Salut, je sais que je dois mettre ma DLL dans C:\Windows sur mon poste XP pour que mon programme marche.

Sur le poste NT, j'ai mis la DLL un peu partout mais toujours sans succès (C:\WINNT; C:\WINNT\system32...). De plus, en mettant le chemin en dur lors de la déclaration "E:\RobustInterbase.dll" dans mon code, le message d'erreur était " Le fichier "E:\RobustInterbase.dll" est introuvable " ce qui veut donc dire que le programme reconnait bien le chemin mais pas le fichier.

Par contre, majnounmajda n'a peut être pas tort !
En effet, j'ai créé cette dll grâce à Delphi 2006 et je me souviens qu'il s'agit d'une dll Active X justement (enfin il me semble je n'ai plus le terme exact) car elle comunique avec une base de données....
Je testerais l'ajout de ma DLL dans les références dès Mardi 8h00 et je vous tiens informé.
Messages postés
516
Date d'inscription
samedi 3 février 2001
Statut
Modérateur
Dernière intervention
24 octobre 2006
1
Hello, si c'est une DLL activeX tu ne pourras pas l'appeler ainsi:
Private Declare Sub EnregistrerExpedition Lib "RobustInterbase.dll"


Warning
Admin Codes-Sources.com
http://www.decompiler-vb.net/