Я пытаюсь вызвать Win32 API PrintDlgW из C # через P / Invoke. С помощью P / Invoke Interop Assistant 1.0 от Microsoft я могу объявить необходимые структуры данных и импортировать функции из DLL. Но как использовать HDC или HWND в C #? Заранее спасибо.
HWND в C ++ действительно пустота *, которая представлена в C # типом IntPtr.
На этом сайте есть хорошие примеры со структурами, уже определенными для множества API. Структура здесь .
Это может сделать это проще
using HWND = System.IntPtr;
Затем используйте HWND в вашем pInvoke ..., чтобы его было легче читать и сохранить "таким же", как подпись pinvoke.
Надеюсь, это поможет, С наилучшими пожеланиями, Том.