У меня есть приложение MFC с поддержкой ATL, идея в том, что когда кто-то создает экземпляр моего интерфейса, объявленного в приложении mfc, это создание создает и отображает окно.
Это все работает нормально, если com-клиентом является cmd.exe, я сделал быстрый com-клиент, который создает экземпляр интерфейса, и когда это происходит, окно отображается по желанию.
Но если эта реализация выполняется в других com-объектах (например, объектах (службах) atl-сервера), окно не отображается. Обратите внимание, что процесс mfc создается в процессе DcomLaunch, но окно не отображается. Все работает нормально, но окно не отображается на моем рабочем столе.
Два вопроса:
1) почему мое окно не отображается в этой ситуации?
2) когда я создаю тот же интерфейс с моим консольным приложением, создается только один процесс приложения mfc, независимо от того, сколько консольных приложений я запускаю, и если служба пытается создать более одного объекта, более одного MFC процесс создан! почему это, как я могу избежать этого. Как я могу сделать так, чтобы первый процесс MFC всегда был таким же, который отвечает на вызовы клиента?
(я думаю, это все из-за настроек безопасности ... но я уже пытаюсь изменить некоторые и ничего ...)
Спасибо
Нуно