Как я могу использовать диалоговое окно (файл ресурсов) для нового проекта VS 2013 из другого проекта VS 2013?

Позвольте мне сначала сказать, что мне не нужна копия файла ресурсов для двух проектов (я видел вопрос об этом).

Использование Windows 7, MS VS 2013, C ++, MFC.

Эти два проекта, на которые я буду ссылаться, являются частью одного и того же решения.

У меня есть диалог, который был создан с файлами rc / h / cpp для него, который работает в одном проекте (проект A). Я хочу иметь возможность открыть этот диалог из подпрограммы в отдельном проекте (проект B). Проект B имеет кнопку с графическим интерфейсом, которую я нажимаю, чтобы открыть диалоговое окно из проекта А.

Я включил ссылку на проект A в свойствах проекта B.

Я включил (#include) путь к файлу rc для проекта A в файл rc для проекта B (который заботится о файле ресурсов, и номера определений для файла ресурсов не перекрываются).

Я включил путь (из проекта A) к классу, который управляет диалогом в проекте B (в файле, который содержит обработчик событий для вызова диалога).

У меня нет ошибок при настройке, просто ничего не происходит. Я создаю диалог и пытаюсь DoModal на нем, как в любом месте Project A (где он работает), и ничего не происходит, я могу нажать кнопку много раз, и он никогда ничего не вызывает.

Я не могу предоставить какой-либо код по этому вопросу, но я надеюсь, что этого достаточно, чтобы дать мне какую-то подсказку. Я потерян на данный момент. Спасибо.

Без рутины:

#include "DialogIWant.h"
...

void OnPushButtonOnProjectB ()
{
CDialogIWant dialog;  // CPP/H/RC in the other project A
dialog.DoModal();  // Nothing comes up
}

0

Решение

Файлы ресурсов могут использовать #inclde такой же, как и любой другой файл C ++. Расположите ресурс диалога в отдельном файле и включите его в .rc файлы обоих проектов.

Вам также нужно будет поделиться определениями идентификатора ресурса, которые обычно находятся в resource.h,

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]