Dll qui ne fonctionne que sur un seul PC

Signaler
Messages postés
20
Date d'inscription
jeudi 24 mai 2012
Statut
Membre
Dernière intervention
27 septembre 2012
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Bonjour,
J'ai vu un sujet semblable sur ce forum mais qui date d'un certain temps et ne répond pas tout à fait à ma question.

Voilà mon problème :

J'ai créé une DLL en C. Je la mets dans system32. J'utilise la fonction de la DLL dans Excel via VBA et ça marche très bien.
Mais quand j'essaye de l'utiliser de la même façon sur un autre ordinateur ça ne marche pas !!

Quelqu'un a une idée de pourquoi ?


Merci à tous pour votre aide.

7 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
Bonjour,
Elle n'a pas été enregistrée sur l'autre PC.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
Ou encore : si l'autre PC est en WIN 7 64 bits, elle a été indûment installée et enregistrée dans System32 au lieu de SysWow64


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Messages postés
34
Date d'inscription
jeudi 7 juin 2012
Statut
Membre
Dernière intervention
14 juin 2012
1
Bonjour,
Quand tu compiles en C as-tu spécifié une cible, 32 ou 64 ou rien ?
Testes tu un code retour de l'appel de la fonction ?
Utilises tu LastDllError ?

Lydie
Messages postés
20
Date d'inscription
jeudi 24 mai 2012
Statut
Membre
Dernière intervention
27 septembre 2012

Merci à tous pour vos réponses.

Quelques précisions :

- les autres PC sur lesquels je teste la dll tournent sous Win XP (comme le mien)
- quand je dis "quand j'essaye de l'utiliser de la même façon " (la DLL), c'est que comme sur mon PC je l'enregistre dans system32
- je n'ai rien spécifié de particulier pour la compilation (je l'effectue avec VS2008)

enfin, pour les dernières questions : je ne comprends pas trop ce que tu entends par
Testes tu un code retour de l'appel de la fonction ?
et non je n'utilise pas LastDllError (je vais d'ailleurs aller voir ce que c'est de ce pas...)

Si vous avez d'autres suggestions, n'hésitez pas.

Merci !
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
c'est que comme sur mon PC je l'enregistre dans system32

précise (point par point) comment tu l'as "enregistrée", s'il te plait.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Messages postés
20
Date d'inscription
jeudi 24 mai 2012
Statut
Membre
Dernière intervention
27 septembre 2012

Un point suffira, je copie le fichier mafonction.dll et je le colle dans C:\WINDOWS\system32
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
Tu ne l'as donc pas enregistrée. Tu t'es juste contenté de la coller dans system32; !
Pour l'enregistrer : en ligne de commande :
Regsvr32 "C:\windows\system32\tadll.dll
ou tadll.dll est la dll concernée.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ