Здравствуйте, MasterZiv, Вы писали:
MZ>On 05/24/2012 06:55 PM, HappyMan wrote:
>> AfxSetResourceHandle() — надо вызывать, если ресурсы находятся в другой
>> библиотеке. А либа и ее ресурсы включаются в основной проект. Или я что-то не
>> правильно понимаю?
MZ>Неправильно, AfxSetResourceHandle() надо вызвать всегда.
Так первоначальный вызов AfxSetResourceHandle делается не в пользовательском *.cpp файле, а в библитотеке MFC.
Мы делаем вызов AfxSetResourceHandle — когда "возвращеаем" хендл — нашему проекту.
Пример:
CCommandData* pCommandData = (CCommandData*)ptr->GetThis();
if (pCommandData)
{
HINSTANCE hClientResources = AfxGetResourceHandle();
AfxSetResourceHandle(::GetModuleHandle("Telecontrol.dll"));
// ЗДЕСЬ МЫ РАБОТАЕМ С РЕСУРСАМИ БИБЛТОТЕКИ "Telecontrol.dll"
..................................
..................................
..................................
AfxSetResourceHandle(hClientResources);
delete pCommandData;
}