Je suis sur un système Windows 10 64 bits et j'ai enregistré un DLL en utilisant RegSvr32.DLL enregistrée mais ne fonctionne pas
J'ai reçu le message suivant après la RegSvr32:
--------------------------- RegSvr32 --------------------------- DllRegisterServer in myspecial.dll succeeded. --------------------------- OK ---------------------------
Quand j'ai essayé d'exécuter un fichier VBS de base qui effectue les opérations suivantes:
Set obj = CreateObject("myspecial.clsmycode")
Je reçois le message suivant après avoir essayé pour exécuter ce code VBS:
--------------------------- Windows Script Host --------------------------- Script: C:\test.vbs Line: 3 Char: 9 Error: ActiveX component can't create object: 'myspecial.clsmycode' Code: 800A01AD Source: Microsoft VBScript runtime error --------------------------- OK ---------------------------
Est-ce que quelqu'un sait ce que je fais de mal ou ce que je dois faire pour que cela fonctionne?
[déjà répondu] (http://stackoverflow.com/a/35985827/692942) dans beaucoup de détails avant . Bien que la question soit pour ASP classique, la même chose s'applique toujours lors de l'enregistrement des DLL COM. – Lankymart
La cause la plus évidente est que vous exécutez la version 64 bits de l'interpréteur de script, mais le serveur COM est une DLL 32 bits. Ou l'inverse. Utilisez toujours l'installateur fourni par le vendeur, utilisez un téléphone si vous n'avez pas les instructions d'installation appropriées. –
@HansPassant Il n'y a pas toujours un * "vendeur" *, le dll COM est si vieux qu'ils n'existent plus ou dans certains cas écrits en interne ... Vous pouvez tout simplement contourner le problème en suivant la liste de contrôle que j'ai fournie la réponse ci-dessus * (voir "Comment enregistrer COM DLL avec Windows" et "COM DLL Checklist" sections) *. Il s'agit de comprendre les différences d'architecture entre les bits 32/64 sous Windows OS. – Lankymart