我正在创建一个COM对象,它需要一个来自WPF(HwndHost)的窗口句柄的HWND。我只有IntPtr来自HwndHost.Handle。
如何将此正确传递给COM对象?我没有使用P / Invoke。
我不关心转换是在.NET还是C ++中发生,而是更喜欢最佳实践。
答案 0 :(得分:3)
由于类型安全已经不在窗口,你不能把它作为一个int传递吗?一个hwnd只是一个32位的值(不确定它是64位Windows版本的64位?)。将它作为int传递给你的COM对象,然后将它转换为HWND,你就可以了。