К списку форумов К списку вопросов
Из ресурса в файл
MatriXakep
02.05.2004 - 13:01
Как из ресурсов записать в файл HTML ресурс.
MatriXakep
1 - 02.05.2004 - 13:08
Среда разработки - MSVC++ 6
MatriXakep
2 - 02.05.2004 - 16:58
Ок я уже разобрался! %)))
вот так. Поправьте, если что не так. :)
  HRSRC hrsrcRes = FindResource(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDR_ORDERTEMP),RT_HTML);
  HGLOBAL hglbRes = LoadResource(AfxGetApp()->m_hInstance,hrsrcRes);
  CFile html;
  html.Open("1.html",CFile::modeCreate|CFile::modeWrite);
  html.Write(hglbRes,SizeofResource(AfxGetApp()->m_hInstance,hrsrcRes));
  html.Close();
UE
3 - 03.05.2004 - 06:39
1. лучше писать вместо AfxGetApp()->m_hInstance функцию AfxGetResourceHandle().
2. не знаю, работает ли этот код, но безопаснее и правильнее получать указатель на ресурс с помощью функции LockResource().
?
4 - 03.05.2004 - 11:18
тогда уж лучше вместо AfxGetResourceHandle писать GetModuleHandle() ;)
MatriXakep
5 - 03.05.2004 - 20:59
Каждый пишет как понимает и как нравится :)))
archimag
6 - 04.05.2004 - 02:34
Насчёт LockResource. Это правильнее только если есть как минимум два потока, которые могут пожелать обратиться к ресурсу, а просто лишний вызов довольно тяжёлой функции ни к чему.
UE
7 - 04.05.2004 - 05:14
2archimag, тяжелой? :)
UE
8 - 04.05.2004 - 05:17
2?, нет, не лучше - GetModuleHandle() очевидно хуже, чем AfxGetResourceHandle(), потому что первая функция завязана на названнии модуля, а вторая - нет.
?
9 - 04.05.2004 - 09:59
(to UE) название красивое ;)
вообще откуда тогда берётся дескриптор если не из GetModuleHandle() или есть ещё какая либо функция?

К списку вопросов на форуме Программирование

>>