ASP classique et COM DLL Ne fonctionne pas dans Server 2008 R2 (erreur d'exécution Microsoft VBScript '800a01ad' composant ActiveX ne peut pas créer d'objet )
J'ai créé une dll dans Visual studio 2010. J'ai effectué les opérations suivantes:
- Compte tenu de construire un nom fort en l'associant à une paire de clés (fichier snk)
- Attribué à chaque classe un individu ProgID et GUID
- Que c'est un 64 bits DLL j'ai fait en sorte que l'habitude de la RegAsm.exe situé dans le "FrameWork64/v4xxxx' dossier. J'ai utilisé RegAsm.exe /base de code ECE2.dll
- J'ai couru 'gacutil -je sur la DLL
Toutes ces étapes ont été couronnés de succès. La DLL et la page ASP, je suis à l'aide sont stockées dans intetpub/wwwroot.
Maintenant, la DLL fonctionne très bien sur mon ordinateur portable et ordinateur personnel (Windows 7 Ultimate). Je suis maintenant essayer de le faire fonctionner sur Windows Server 2008 R2.
C'est là que je vais avoir le problème.
Je complète les mêmes étapes que ci-dessus, qui sont tous des succès. Cependant quand je lance la page ASP, j'obtiens un message d'erreur qui pourrait laisser penser qu'il n'a PAS été enregistrée, même si elle a:
Erreur d'exécution Microsoft VBScript '800a01ad' composant ActiveX ne peut pas
créer un objet: 'ECE2.CSV_DataSet'
J'ai pensé qu'il pourrait être un paramètre dans IIS qui a besoin de changer. Notez que ce serveur est déjà configuré pour autoriser les pages ASP Classiques, donc je sais que c'est pas ça.
Quelqu'un pourrait-il me donner une indication quant à savoir si il y a un paramètre donné, j'ai besoin de changer de Serveur, ou si il y a plus de sécurité cerceaux j'ai sauter à travers pour qu'il fonctionne sur le Serveur 2008 qui je n'ai pas besoin de le faire sur Windows 7 Ultimate?
OriginalL'auteur user1508941 | 2012-07-07
Vous devez vous connecter pour publier un commentaire.
Vérifier les paramètres avancés de l'application de la piscine que cette application ASP pistes. A-t-elle, "Activer l'Application 32 Bits" à True. Si oui, alors c'est votre problème, vous ne pouvez pas instancier un 64 bits dll sous une version 32 bits de la piscine.
Est là une bonne raison de vous considérer cela comme un "64 bits dll" au lieu de "any CPU"? Si pas regasm aussi pour l'utiliser comme une application 32 bits dll.
Sinon, vous aurez besoin pour exécuter cette application ASP, sans "Activer l'application 32 Bits", de sorte qu'il fonctionne en 64 bits, mais il n'y a probablement une raison à cela est défini dans la première place. Donc, la prochaine étape est de créer un nouveau pool d'applications qui n'ont pas ce paramètre et de rendre une partie de votre ASP exécuter comme une application séparée dans cette piscine.
OriginalL'auteur AnthonyWJones