В следующем коде используются функции CreateIconFromResourceEx, DrawIconи LookupIconIdFromDirectoryEx, и некоторые из ресурсов функций для создания дескриптора icon на основе данных значок из другого исполняемого файла. Затем в окне отображается значок.
HICON hIcon1; / / значок обработать HINSTANCE hExe; / / обработать до загрузки.EXE-файл HRSRC hResource; / / обработать для FindResource HRSRC hMem; / / обработать для LoadResource БАЙТ * lpResource; / / адрес из ресурсов данных int nID; / / Идентификатор ресурса, который лучше всего подходит текущий экран HDC hdc; / / обработать для отображения контекст / / загрузить файл, из которого необходимо скопировать значок.
hExe = LoadLibrary("myapp.exe");
/ / Найти значок каталога, идентификатор которого 440.
hResource = FindResource (hExe, MAKEINTRESOURCE(440), RT_GROUP_ICON);
/ / Загрузки и замок значок каталога.
hMem = LoadResource (hExe, hResource);
lpResource = LockResource(hMem);
/ / Получить идентификатор значка, который наиболее подходит / / для видео дисплей.
nID = LookupIconIdFromDirectoryEx((PBYTE) lpResource, правда, CXICON, CYICON, LR_DEFAULTCOLOR);
/ / Найти биты для значка nID.
hResource = FindResource (hExe, MAKEINTRESOURCE(nID), MAKEINTRESOURCE(RT_ICON));
/ / Загрузки и замок значок.
hMem = LoadResource (hExe, hResource);
lpResource = LockResource(hMem);
/ / Создать дескриптор для значка.
hIcon1 = CreateIconFromResourceEx((PBYTE) lpResource, SizeofResource (hExe, hResource), правда, 0x00030000, CXICON, CYICON, LR_DEFAULTCOLOR);
/ / Рисовать иконку в клиентской области.
DrawIcon (hdc, 10, 20, hIcon1)