У меня есть управляемый COM вне сервера exe-процесса в c #, выставляющий мою объектную модель приложения для автоматизации, все работает нормально. Я могу получить к нему доступ из неуправляемого кода (например, VC ++), и он запускает мой сервер вне процесса, и каждый работает через COM, используя библиотеку типов, созданную для моего exe-сервера.
Когда я пытаюсь сделать это из управляемого кода, скажем, клиентского приложения C #, я ссылаюсь на свой exe-сервер, но он загружает незавершенный сервер в клиентское приложение.
Как я могу заставить его работать из управляемого кода и запустить сервер вне процесса в своем собственном процессе?
То, что я пытаюсь сделать, это представить объектную модель приложения в COM поверх моего приложения, чтобы ее можно было автоматизировать с помощью неуправляемого кода, а также управляемого кода, аналогично тому, как Microsoft Office. Все работает нормально в неуправляемом коде через COM, но попытка сделать то же самое из управляемого кода только создает экземпляр моего объекта в процессе.
C # Пример:
MyApp.Application app = new MyApp.Application();
Было бы просто создать экземпляр объекта, но я хочу, чтобы он тоже запускал мой COM-сервер вне процесса. Я что-то здесь упускаю, просто интересно, есть ли у кого-нибудь совет, что делать или где искать.