Подключение DLL-ки написаной на С++
От: gorbva  
Дата: 15.07.08 06:02
Оценка:
Имеетя длл-ка написаная на С++ . С ней идут еще хидер-файл и lib-файл.
В этой длл-ке есть функция такого плана:

LIBSPEC char* CALL_API keyrandom(unsigned long unit_id);

Я вызываю ее из своей программы так (C#, .NET):

[DllImport("KeyDLL.dll",EntryPoint="key_generateRandom",PreserveSig=false)]
public static extern char key_genRND(ulong DEVICE_ID);
.........
char Key_generated = key_genRND(1234567890);


При работе выползает следующий егог:
"Additional Information: Attempting managed execution inside OS Loader lock. Do not attempt to run managed code inside a DllMain or image initialization function since doing so can cause the application to hang."

Вот я непойму где я накосячил..
Скорее всего где-то в возвращаемом значении. Ведь длл-ка возвращает поинтер на массив символов, C# не понимает поинтеры с разбегу.
Как обработать возвращаемое значение? Что делать с этим поинтером?
Посоветуйте что вкурить по данному вопросу?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.