Сообщение об ошибке кажется довольно ясным - откуда вы ожидали тип, с которого вы пришли? Похоже, что вы в основном пропускаете объявление структуры, которое вы можете взять из PInvoke.NET .
По сути, P / Invoke - это способ представления обращений к нативной библиотеке для управляемого кода, но для сложных типов вам необходимо управляемое представление типа - и .NET не поставляется с представлением CONSOLE_SCREEN_BUFFER_INFO
, поэтому Вы должны заявить об этом сами. PInvoke.NET
содержит lot этих объявлений, а также объявления для функций, которые их используют. (Они не всегда точны, но по моему опыту они обычно .)