AxAcroPDF - Vista64 Classe Non Enregistrée Erreur
Nous avons un WinForms application écrite en C# qui utilise la AxAcroPDFLib.AxAcroPDF composant de charger et d'imprimer un fichier PDF. A été de travailler sans problème dans Windows XP. J'ai déplacé mon environnement de développement pour Vista 64 bits et maintenant l'application ne fonctionnera pas (sur Vista 64), à moins que j'ai supprimer le AxAcroPDF composant. J'obtiens l'erreur suivante lors de l'exécution de l'application:
"Du système.Moment de l'exécution.InteropServices.COMException:
Classe non enregistrée (Exception de HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))."
J'ai été informé sur les Forums Adobe que la raison de l'erreur, c'est qu'ils n'ont pas de version 64 bits du AxAcroPDF contrôle ActiveX.
Est-il un moyen de contourner ce problème? Par exemple puis-je convertir le contrôle ActiveX 32 bits à 64 bits de contrôle de moi-même?
OriginalL'auteur daveywc | 2008-09-15
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas convertir Adobe contrôle ActiveX 64 bits, vous-même, mais vous pouvez forcer votre application s'exécute en mode 32 bits par réglage de la plate-forme cible pour x86.
Pour les instructions de votre version de Visual Studio, consultez la section 1.44 de Problèmes Lors De L'Utilisation De Microsoft Visual Studio 2005
OriginalL'auteur rpetrich
L' .Net framework 1.1 est toujours le ciblage des Processeurs 32 bits .Net framework 2.0 et au-dessus peuvent cibler 32 bits ou 64 bits selon la processorArchitecture propriété du programme manifeste modifié par la Plate-forme Cible' option de l'IDE de Visual Studio.
Avec l'option par défaut "any CPU", le code IL est compilé en fonction de la plateforme, mais bien sûr, la COM appel à la AxAcroPDF 32 bits composant échoue si la plate-forme est de 64 bits.
Simplement de reconstruire le fichier EXE pour cible de 32 bits plate-forme. Cela fonctionne bien avec l'émulateur WOW64 dans Vista 64 bits.
OriginalL'auteur
Utiliser DLL isolement, fonctionne avec tous les 32 bits de l'application COM+. En savoir plus:
http://support.microsoft.com/kb/281335
Avec cette solution, vous pouvez isoler votre 32 bits de l'application COM+ dans un processus 32 bits.
64 bits, les applications de recherche installé objets COM+: HKLM\Software\Classes, mais les applications 32 bits dans l'utilisation HKLM\Software\WOW6432\Classes
OriginalL'auteur