Maison >développement back-end >C++ >Comment résoudre l'exception COM « Classe non enregistrée » (0x80040154) ?
Résolution de l'exception COM « Classe non enregistrée »
Lors de l'instanciation d'une classe COM, vous pouvez rencontrer l'erreur :
<code>Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))</code>
Cela signifie que la classe COM utilisée par votre code n'est pas correctement enregistrée sur votre système. Voici comment y remédier :
1. Alignement de l'architecture :
Confirmez que tous vos assemblages sont construits pour l'architecture système correcte. Si l'erreur se produit dans un environnement 64 bits, assurez-vous que vos assemblys sont compilés pour x64. La reconstruction de votre solution pour x86 pourrait résoudre le problème.
2. Réenregistrez le composant COM :
Si l'architecture n'est pas le problème, essayez de réinstaller le composant COM référencé dans votre code. Les informations du programme d'installation ou du registre des composants COM se trouvent généralement dans le programme d'installation de Microsoft Visual Studio Tools pour Office ou dans le registre Windows (sous HKCR\CLSID
).
Techniques utiles :
RegAsm
permet l'enregistrement et la désinscription manuels des classes COM.Enable32BitApplications
sur 1 (située à HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows
).En suivant ces étapes, vous pouvez diagnostiquer et résoudre efficacement les exceptions d'enregistrement COM, garantissant ainsi que votre application s'exécute sans interruption.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!