Composant ActiveX Err 53 Dll introuvable (elle est pourtant la...)

cs_Marcial Messages postés 57 Date d'inscription samedi 3 mai 2003 Statut Membre Dernière intervention 31 juillet 2008 - 18 nov. 2007 à 10:05
jikjak Messages postés 2 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 19 février 2008 - 19 févr. 2008 à 20:51
Hello tout le monde,
J'ai comme qui dirait un problème... J'ai dévellopé un control ActiveX déstiné a être mis dans une page Web et qui pour l'une de ses fonctions enregistrera une image au format JPG. Cette fonction marche parfaitement lors des tests avec VB6, mais me renvoie une "Erreur 53: DLL non trouvée" lorsque j'inclu l'ActiveX dans une page Web que celui-ci soit dans un CAB ou non. J'utilise la DLL "ijl11.dll" et elle est bien présente dans le CAB et dans le répertoir où se trouve l'ActiveX.

Si je met la Dll dans le dossier "System32" tout fonctionne parfaitement. Mais le problème de cette solution est que je ne sait pas comment m'y prendre pour copier cette DLL depuis le CAB vers le répertoire "System32" de l'utilisateur... (en plus c'est pas élégant   )

Y'aurait il une bonne âme pour m'aider.
Merci par avance...





___________________________________________
Le plus grand des défauts de l'homme c'est de toujours
pointer un doigt accusateur... Mais jaimais devant un miroir...
___________________________________________

3 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
18 nov. 2007 à 13:33
Salut
Les DLL doivent se trouver sur le répertoire System32 pour qu'elle puisse être partagée avec d'autres applications.
Cela peut fonctionner si tu la places sur le répertoire de ton application MAIS, si une autre application s'en sert et que tu désinstalles ton application, la DLL disparaitra et cela provoquera une erreur (genre 53) dans l'autre application = marée de bonheur à dépanner.
Pour placer un fichier depuis le CAB vers System32 : Il faut le paramétrer dans la procédure d'empaquetage : Pour chaque fichier empaqueté, il te demande sur quel répertoire il doit le mettre.

Pour info, cette DLL de Intel est obsolète et on peut faire autrement, sans DLL : <clique ici>

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
cs_Marcial Messages postés 57 Date d'inscription samedi 3 mai 2003 Statut Membre Dernière intervention 31 juillet 2008
18 nov. 2007 à 15:51
Slt,
je ne connaissait pas cette solution sans DLL, je vais mettre ça en place de suite... Mais mon problème reste entier, car pour cette fois tu m'a trouvé une solution sans DLL, mais ce ne sera pas toujours possible...
Ce que je ne comprend pas c'est que j'ai pourtant bien paramétré la DLL dans l'assistant d'empaquetage comme étant localisée dans le CAB, et si je vais voir dans le fichier INI la variable "DestDir" pour "ijl11.dll" est bien a "11" (donc vers system32)

>>>>>>>>>>>>>>>>>>

[ijl11.dll]
file-win32-x86=thiscab
RegisterServer=no
DestDir=11
FileVersion=1,1,2,16
>>>>>>>>>>>>>>>>>>

Est ce que j'ai loupé quelque chose lors de l'ampaquetage ??
Je peux lire les CAB mais pas les éditer, je n'ai pas de soft pour ça...
N'y aurait il pas une solition du coté de ce fichier INI ??

__________________________________________
Le plus grand des défauts de l'homme c'est de toujours
pointer un doigt accusateur... Mais jaimais devant un miroir...
___________________________________________
0
jikjak Messages postés 2 Date d'inscription lundi 28 janvier 2008 Statut Membre Dernière intervention 19 février 2008
19 févr. 2008 à 20:51
hi
0
Rejoignez-nous