Первоначально в моей программе MFC был один файл .rc, содержащий ресурсы для двух языков. Но теперь у меня есть два файла .rc в двух отдельных проектах dll только для ресурсов (в том же решении), и я использую LoadLibrary () и AfxSetResourceHandle () для динамического выбора языка (на который я ссылался) Эта статья).
Кажется, работает хорошо, но одна проблема заключается в том, что я не могу правильно использовать редактор диалогов для диалогов в проектах dll только для ресурсов. Обычно он показывает диалоги, но я не могу добавить обработчик событий, дважды щелкнув элемент управления или используя меню свойств. Есть ли способ соединить файлы кода и ресурсов, которые находятся в отдельных проектах в одном решении?
РЕДАКТИРОВАТЬ:
Я немного изменил подход. Вместо того, чтобы создавать новые RC-файлы в отдельных ресурсных проектах, я создал их в основном проекте и исключил их из сборки. И я сделал их ссылками на отдельные ресурсные проекты.
Одним из важных моментов было то, что я добавил #include "resource.h"
в Директивы символов только для чтения каждого файла RC (Вы можете сделать это, щелкнув правой кнопкой мыши файл RC в представлении ресурсов и выбрав Ресурс включает в себя вещь). "resource.h"
вот тот, который связан с оригинальным RC-файлом основного проекта, в котором есть ресурсы для нескольких языков. Я не знаю, почему я должен добавить это, но кажется необходимым для спутниковой библиотеки DLL работать хорошо.
Осталась одна проблема — как сохранить несколько файлов RC. Для добавления ресурсов, если мне нужно сохранить исходный RC-файл и его файл resource.h, мне, возможно, придется сначала добавить ресурсы в исходный RC-файл, а затем скопировать их в каждый RC-файл для конкретного языка. Это правильный метод, или я могу продолжать без оригинального файла RC?
Включите в проект файл RC только для этого ресурса DLL. Но исключите это из сборки.
Если у вас есть два файла ресурсов. Используйте файл ресурсов по-другому: