У меня есть неуправляемая DLL с функцией, которая принимает указатель в качестве аргумента. Как передать указатель из C #, не будучи «небезопасным»?
Вот пример кода:
[DllImport(@"Bird.dll")]
private static extern bool foo(ushort *comport);
Соответствующая запись в заголовке:
BOOL DLLEXPORT foo(WORD *pwComport);
Когда я пытаюсь просто разыменовать его ( & comport
), Я получаю сообщение об ошибке: « Указатели и буферы фиксированного размера могут использоваться только в небезопасном контексте. »
Как мне обойти это?