Совместимость .NET и COM: невозможно создать объект, когда сервер COM + находится вне процесса - PullRequest
0 голосов
/ 17 февраля 2012

Я определил видимый COM-класс с именем Cls1 в C #, зарегистрированный содержащий сборку C0M + с помощью инструмента regsvcs (с атрибутами сборки:

[assembly: ApplicationAccessControl(false)]
[assembly: ApplicationActivation(ActivationOption.Server)]

) Когда я пытаюсь создать его из кода клиента, как показано ниже

Guid clsid = new Guid(sClsid_of_Cls1);
Type oType = Type.GetTypeFromCLSID(clsid); //Here I got valid type
Object obj = Activator.CreateInstance(oType); 

Я получил исключение System, RunSystem.Runtime.Remoting.RemotingException "Не удается загрузить тип ..." Когда я изменяю атрибут ApplicationActivation с Сервер на Библиотека , создание успешно завершено
Дополнительная информация: я могу создавать как внутрипроцессные, так и внепроцессные объекты из кода VBS
Вопрос: если мне нужно создать вне процесса объект из C # - что мне здесь не хватает?
Ваша помощь будет ценной
Заранее спасибо

...