COM-Ausnahme wird behoben: Klasse nicht registriert (0x80040154)
Beim Versuch, eine COM-Klasse zu instanziieren, ist eine Ausnahme mit der Meldung „Klasse nicht registriert (Ausnahme von HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))“ aufgetreten. Dieser Fehler bedeutet, dass die COM-Komponente nicht in der Systemregistrierung registriert ist. Um dieses Problem zu beheben, führen Sie bitte die folgenden Schritte aus:
1. Überprüfen Sie die Baugruppenarchitektur
Stellen Sie sicher, dass Assemblys, die auf COM-Komponenten abzielen, mit derselben Architektur kompiliert werden. Wenn die Ausnahme nach der Neuinstallation der COM-Komponente weiterhin besteht, versuchen Sie, die Assembly-Architektur auf x86 zu ändern.
2. COM-Komponente registrieren
Öffnen Sie eine Eingabeaufforderung mit erhöhten Rechten und navigieren Sie zu dem Verzeichnis, in dem sich die COM-Komponente befindet. Führen Sie den folgenden Befehl aus, um die Komponente zu registrieren:
<code>regsvr32 YourComponentName.dll</code>
Ersetzen Sie „YourComponentName.dll“ durch den tatsächlichen Namen der COM-Komponente.
3. Gewähren Sie Zugriff auf Registrierungsschlüssel
Stellen Sie sicher, dass der angemeldete Benutzer über ausreichende Berechtigungen für den Zugriff auf die erforderlichen Registrierungsschlüssel verfügt. Gewährt dem Benutzer den Besitz von:
<code>HKEY_CLASSES_ROOT\CLSID\{YourComponentGUID}</code>
Ersetzen Sie „{YourComponentGUID}“ durch die GUID der COM-Komponente.
4. Debuggen aktivieren
Aktivieren Sie das Debuggen, um detailliertere Fehlermeldungen anzuzeigen. Wählen Sie in Visual Studio das Menü Debuggen aus und klicken Sie auf An Prozess anhängen. Hängen Sie es an den Prozess an, bei dem die Ausnahme aufgetreten ist. Auf diese Weise können Sie den Code schrittweise durchgehen und die spezifische Fehlerursache identifizieren.
Das obige ist der detaillierte Inhalt vonWie behebt man die COM-Ausnahme „Klasse nicht registriert (0x80040154)'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!