Windows桌面应用程序(1-3-1-8th) 进程互操作性

您可以使用仿真层在64位Windows上运行基于Win32的应用程序。 ARM上的Windows 10包含一个x86-on-ARM64仿真层。有关更多信息,请参阅运行32位应用程序

在64位Windows上,64位进程无法加载32位动态链接库(DLL)。此外,32位进程无法加载64位DLL。但是,64位Windows支持64位和32位进程之间的远程过程调用(RPC)(在同一台计算机上和计算机之间)。在64位Windows上,进程外32位COM服务器可以与64位客户端通信,进程外64位COM服务器可以与32位客户端通信。因此,如果您有一个不支持COM的32位DLL,您可以将其包装在进程外的COM服务器中,并使用COM来封送来自64位进程的调用。

当前正在使用InprocServer注册表项注册进程内服务器。在64位Windows上,64位和32位进程内服务器应使用InprocServer32条目。

如果端口句柄本质上是计算机的本地句柄,并且永远不会在32位到64位边界内使用,则使用HANDLE_PTR类型而不是INT_PTRDWORD_PTR类型。这包括移植RPC接口,将这些句柄作为DWORD值传递。 64位HANDLE_PTR在线上是64位(未截断),因此不需要映射。 (32位HANDLE_PTR在线上为32位。)

有关更多信息,请参阅“设计64位兼容接口”。


原文链接:Process Interoperability

猜你喜欢

转载自blog.csdn.net/qq_37422196/article/details/81316409
今日推荐