импорт структур С++ в проект С#
Проблема такая: есть DLL написанная на С++, она подключается к проекту на C#. В списке аргементов экспортируемых функций присутстувуют структуры, естесственно С# на них ругается, как можно решить эту проблему?
Например,
экпортируется функция
Код:
extern "C" __declspec(dllexport) int func(const char* src,int nsrc,const char* src2,MY_STRUCT* str);
импортируется
Код:
[DllImport("import.dll")]
public static extern int func(string src, int nsrc, string src2, [COLOR="Red"]MY_STRUCT*[/COLOR] str);
public static extern int func(string src, int nsrc, string src2, [COLOR="Red"]MY_STRUCT*[/COLOR] str);
Определить тип MY_STRUCT в .net-сборке, или просто передавать IntPtr на буфер памяти
можно поподробней про IntPtr?
образовался другой вопрос
есть структура
Код:
typedef struct
{
short eng;
short type;
unsigned long keyserial;
char userid[24];
void* key;
}PRIM_KEY;
{
short eng;
short type;
unsigned long keyserial;
char userid[24];
void* key;
}PRIM_KEY;
что собственно делать с этим void* ?