我有一个32位的COM服务器(及其源代码) 源生成服务器和32位代理存根。 (MIDL编译器生成代理存根代码。)
我也想制作64位代理,这样64位程序就可以与我的32位COM服务器通信。
如何将32位代理转换为与32位进程对话的64位代理? 我猜测只用/ D重新编译:_M_AMD64是不够的。
答案 0 :(得分:4)
MIDL编译器生成的代理代码应该可以工作。您只需要从该代码构建一个64位的dll。
确保您的类型已正确定义。确保避免使用类似UINT_PTR的类型,当64位调用者调用32位服务器时,这些类型将无效。