Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Sie können Win32-basierte Anwendungen unter 64-Bit-Windows mit einer Emulationsebene ausführen. Windows 10 auf ARM enthält eine x86-on-ARM64-Emulationsebene. Weitere Informationen finden Sie unter Ausführen von 32-Bit-Anwendungen.
Unter 64-Bit-Windows kann ein 64-Bit-Prozess keine 32-Bit-Dynamic Link Library (DLL) laden. Darüber hinaus kann ein 32-Bit-Prozess keine 64-Bit-DLL laden. 64-Bit-Windows unterstützt jedoch Remoteprozeduraufrufe (RPC) zwischen 64-Bit- und 32-Bit-Prozessen (sowohl auf demselben Computer als auch auf allen Computern). Unter 64-Bit-Windows kann ein out-of-process 32-Bit-COM-Server mit einem 64-Bit-Client kommunizieren, und ein out-of-process 64-Bit-COM-Server kann mit einem 32-Bit-Client kommunizieren. Wenn Sie daher über eine 32-Bit-DLL verfügen, die nicht COM-fähig ist, können Sie sie in einen OUT-of-Process-COM-Server einschließen und COM verwenden, um Aufrufe an und von einem 64-Bit-Prozess zu marshallen.
In-Process-Server werden derzeit mithilfe des Registrierungseintrags InprocServer registriert. Auf 64-Bit-Windows-, 64- und 32-Bit-In-Process-Servern sollten die InprocServer32- Eintrag verwendet werden.
Verwenden Sie zum Portieren von Handles, die auf dem Computer lokal sind und niemals über die 32-Bit-bis 64-Bit-Grenze hinweg verwendet werden, den HANDLE_PTR Typ anstelle des INT_PTR oder DWORD_PTR Typs. Dies umfasst das Portieren von RPC-Schnittstellen, die Handles wie DWORD--Werte übergeben. Die 64-Bit-HANDLE_PTR ist 64 Bit auf dem Draht (nicht abgeschnitten) und benötigt daher keine Zuordnung. (Die 32-Bit-HANDLE_PTR ist 32 Bit auf dem Draht.)
Weitere Informationen finden Sie unter Entwerfen von 64-Bit-kompatiblen Schnittstellen.