Я использую PInvoke Interop Assistant для неуправляемых библиотек DLL, используя третью вкладку в пользовательском интерфейсе, помеченную «SigImp Translate Snippet». Просто скопируйте и вставьте свой заголовок в окно «Фрагмент исходного кода» и нажмите «Создать» (или включите «Автогенерация»). В качестве иллюстрации вот код из моего вопроса . Обратите внимание, что по какой-то причине ошибки отображаются не на панели «Ошибки», а в виде комментариев вверху сгенерированного кода.
Как уже говорили несколько человек, сгенерированный код следует использовать в качестве руководства - вам, возможно, придется внести изменения, чтобы получить именно то, что вы хотите.