Bedeutet eine System.Runtime.InteropServices.COMException von 0x80040154 immer, dass die Klasse nicht registriert ist? Ich erhalte eine COMException, die besagt, dass "das Abrufen der COM-Klassenfactory für Komponente mit CLSID {29131539-2EED-1069-BF5D-00DD011186B7} aufgrund des folgenden Fehlers fehlgeschlagen ist: 80040154." Es versucht, Interop.Domino.dll zu laden, das eine Referenz ist, die ich von der COM-Registerkarte der Add Reference namens "Lotus Domino Objects" erhielt, die domobj.tlb im Notes-Programmordner verweist.Ist eine COMException von 0x80040154 immer 'Klasse nicht registriert'?
Ich habe den Code vor Jahren geschrieben - es ist das einzige, was ich jemals mit interop gemacht habe und es ist fair zu sagen, dass ich mich nie wirklich damit beschäftigt habe.
Ich sehe diesen Fehler wieder nach dem Verschieben des Codes auf einen Server 2008 R2 (so ist es x64). Es wurde auf XP geschrieben und lief 2003 (beide x86). Um das Problem zu diagnostizieren, baute ich eine Win7 x86 (weil es keine R2 x86) Box und es funktionierte. Ich habe auch eine 2003 x64-Box gebaut und es schlägt mit dem gleichen Fehler fehl, also sieht es so aus, als ob es durch den Wechsel zur x64-Architektur verursacht wurde. Gibt es etwas, das ich tun sollte, wenn ich interop mache, um x86 COM DLLs auf x64-Maschinen laufen zu lassen?
Ja, das ist vorhanden, danke. Und danke für den Link. – ssg31415926