У нас есть несколько крупных приложений MFC, которые в настоящее время называют COM-объект, чтобы вызвать сложный диалог. Мы хотели бы интегрировать диалог в приложения - мы не хотим продолжать использовать COM-объект.Как я могу назвать .NET-форму из приложения MFC?
Я изучаю возможность построения диалога в .NET как отдельный проект (с использованием форм Windows, а не WPF) и предоставления второго проекта C++/CLI, который вызывает его и который можно вызывать из обычного кода на C++. Эта структура такова, что несколько приложений, которые должны включать диалог, могут просто подбирать проекты в своих решениях. (Приложения являются устаревшими приложениями, а их переписывание широко невозможно - мы медленно переносим их на .NET, но это многолетний проект. Преобразование приложений в C++/CLI не является вариантом.)
Я построил это и протестировал его из модельного приложения, но до сих пор я не могу заставить его работать в простейшем из крупных приложений, и, основываясь на некоторых вещах, которые я читал, я начинаю сомневаюсь, что это возможно. (См. this link, особенно. Я знаю this Stackoverflow question, но это не кажется актуальным.)
So. Возможно ли это? Любые предложения о том, как действовать?
У нас уже есть компонент COM на основе C++. Целью этого проекта является устранение необходимости в COM. – mlo
Я получаю сбои в инициализации OLE до того, как выполнение когда-либо приближается к рассматриваемому коду. Ошибка Google в том, что ошибка привела меня к первой ссылке. – mlo