Параметр / clr на управляемом inproc com-сервере дает сбой .net клиенту - PullRequest
2 голосов
/ 29 июня 2011

В MSVS 2010 реализован inproc com-сервер (dll).

Клиент довольно прост:

static void Main()
{
    var t = Type.GetTypeFromCLSID(clsid);
    dynamic o = Activator.CreateInstance(t);
    o.CallMe();
}

CallMe ничего не делает. Он пуст и возвращает S_OK;

Клиент аварийно завершает работу (vshost32.exe прекращен), а затем в окне сообщения «хотел бы отправить сведения о сбое в Microsoft?». На данный момент я не могу отладить сбойный процесс.

Я заметил, что это исключение возникает, только если к com-серверу применена опция "\ clr" (так как он использует некоторые классы .net внутри, но клиент не вызывает эти методы)

Я думаю, мне нужно проверить некоторые флаги проекта exta в проекте Com-Server?

Что я могу здесь пропустить?

Временное решение

Я запустил код .Net, который использовал для работы с изображениями, и заменил его на нативную библиотеку C ++ с открытым исходным кодом. После этого я мог удалить опцию / clr.

...