MFC Active-X-Steuerelement in einem WinForms Fenster auf Vista 64bit; „Klasse nicht registriert Exception“

StackOverflow https://stackoverflow.com/questions/1807230

Frage

In einem Versuch, zu versuchen, eine anderen SO Poster Vorschlag für Schlüsselverwaltung in einem ActiveX-Steuerelement in einem WinForms Fenster gehostet, um zu bestätigen, habe ich versucht, ein Barebone-MFC-ActiveX-Steuerelement zu machen, dann ist es auf einem Windows-Formular platzieren. In der Entwurfszeit zeigte die Kontrolle ohne Probleme auf.

Wenn die Anwendung läuft die gefürchtete „Klasse nicht registriert Ausnahme.“ Dialog erscheint.

Beide Projekte sind in VS 2008. Die WinForms App ist ein .NET 3.5 Framework-Anwendung.

Ich habe durch den Debugger versucht, ausgeführt wird, aus dem Explorer (erhöhte Privilegien in beiden Fällen) und nichts schien zu funktionieren. Ich sogar dafür gesorgt, ich sowohl mit den 64-Bit und 32-Bit-regsvr32 ausführbaren Dateien manuell die OCX registriert.

Das hat mich verwirrt, da ich dies nicht erwartet zu nicht laufen. Ich habe getan, Ähnliche Versuche bei der Arbeit (32-Bit-Windows XP-Box) ohne Probleme.

Meine VS-Konfiguration ist wie folgt:

  • Microsoft Visual Studio 2008
  • Version 9.0.30729.1 SP
  • Microsoft .NET Framework
  • Version 3.5 SP1

    Die verwirrende Bit ist, dass das ActiveX-Steuerelement in Entwurfszeit zu zeigen scheint. Jede Antwort, Vorschläge oder Gedanken zu erkennen sind.

War es hilfreich?

Lösung

Ich brauchte die Ausgabe der .Net-Host x86 statt zu ändern „jede Plattform.“ Dies ist erforderlich, da die Anwendung auf x64 JITTED wird, die das ActiveX-Steuerelement wurde nicht erstellt. D'oh! Die App lief ganz gut nach dem Wechsel auf ActiveX-Host-Projekt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top