pinvoke c #: как я могу отобразить "const char ** output"? - PullRequest
2 голосов
/ 15 декабря 2010

У меня есть функция C с этим прототипом:

void foo(const char **output);

я скомпилировал файл C в DLL и ai make DllImport ("my.dll");

но какнапишите c # прототип?

Большое спасибо!

1 Ответ

2 голосов
/ 15 декабря 2010

Это будет массив указателей на байты:

 private static extern void foo(IntPtr pointerToByteArray);

Использование:

        fixed(byte* buffer = new byte[LENGTH_WHICH_YOU_KNOW_IS_ENOUGH])
        {
            IntPtr ptr = new IntPtr(buffer);
            foo(ptr);
        }
...