Ich hörte auf Windows x64-Architektur, um zu unterstützen, sowohl x86 und x64-Anwendung zu laufen, gibt es zwei separate/verschiedene Sätze von Windows-Registrierung - eine für x86-Anwendung zum Zugriff und die andere für x64-Anwendung zu Zugriff? Beispiel: Wenn ein COM CLSID im x86-Registrierungssatz registriert, kann die x64-Anwendung niemals mit der CLSID auf die COM-Komponente zugreifen, weil x86/x64 über verschiedene Registrierungssätze verfügt.Windows 64-Bit-Registrierung vs. 32-Bit-Registrierung
Also, meine Frage ist, ob mein Verständnis der obigen Probe korrekt ist? Ich möchte auch einige weitere Dokumente zu diesem Thema, über die zwei verschiedenen Sätze von Registrierung auf x64-Architektur zu bekommen. (Ich habe einige Suche, aber keine wertvollen Informationen zu finden.)
Vielen Dank im Voraus, George
Eine kurze Frage, wenn ich Regsvr32 verwende, um eine COM-Komponente zu registrieren, woher wussten wir, ob wir unter X86 oder X64 Registrierung registrieren? Meine Überraschung ist, wenn die x64-Anwendung unter der x86-Registrierung registriert ist, nicht auf die COM-Komponente zugreifen kann? – George2
Es gibt zwei Versionen von regsrv32 auf einer 64-Bit-Maschine. In dem Wow6432-Knoten registriert man 64-Bit-Binärdateien und 1 Register 32-Bit-Binärdateien. Dieser Microsoft KB-Artikel könnte für Sie hilfreich sein: http://support.microsoft.com/kb/282747 –
1. Wenn wir eine neue COM-Komponente mit 32-Bit-Regsvr32 registrieren, muss die COM-Komponente für x86 (wenn wir Registrieren Sie eine neue COM-Komponente mit 64-Bit-Regsvr32, die COM-Komponente muss für x64 erstellt werden) - bedeutet, dass wir 32-Bit-Regsvr32 nicht verwenden können, um 64-Bit-COM-Komponente zu registrieren (oder 64-Bit-Regsvr32 zu registrieren 32-Bit) COM-Komponente), richtig? 2. Der 64-Bit-Prozess konnte nur auf die x64-Registrierung für COM CLSID zugreifen, und der 32-Bit-Prozess konnte nur auf die x86-Registrierung für COM CLISD zugreifen, kein Cross-Zugriff. Mein Verständnis richtig? – George2