标签: c# interop pinvoke
我试图通过P / Invoke从C#调用PrintDlgW Win32 API。在Microsoft的P/Invoke Interop Assistant 1.0的帮助下,我能够从DLL声明必要的数据结构和导入函数。但是如何在C#中使用HDC或HWND?提前谢谢。
答案 0 :(得分:4)
C ++中的HWND实际上是一个void *,它由IntPtr类型在C#中表示。
答案 1 :(得分:2)
This site有很好的例子,已经为很多API定义了结构。结构为here。
答案 2 :(得分:1)
这可能会更容易做到这一点
using HWND = System.IntPtr;
然后在你的pInvoke中使用HWND ......让它更容易阅读并保持与pinvoke签名“相同”。
希望这有帮助, 最好的祝福, 汤姆。