![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Не сохраняется иконка программы в файл [D7, WinXP]
Tapok © (2005-12-16 14:34:00)Ни одна функция не возвращает ошибки, но сохраняемый файл не содержит иконки.
Длина файла всегда равна 20-ти байтам. Что здесь неправильно?
procedure TForm1.Button1Click(Sender: TObject);
var
hResInfo,hResData,hF: THandle;
pData: Pointer;
begin
hResInfo := FindResource(hInstance,'MAINICON',RT_GROUP_ICON);
hResData := LoadResource(hInstance,hResInfo);
if hResData <> 0 then
begin
pData := LockResource(hResData);
if pData <> NIL then
begin
hF := FileCreate('c:\MainIcon.ico',fmOpenWrite);
FileWrite(hF,pData^,SizeOfResource(hInstance,hResInfo));
FileClose(hF);
end;
end;
end;
Спасибо за помощь!
Tapok (2005-12-16 15:54:00) [1]clickmaker © (16.12.05 15:33) [8]
Спасибо. Буду разбираться.
clickmaker (2005-12-16 15:33:00) [2]может это прольет свет?
http://almar.net.ru/a/kpk?id=1127795003&n=7
Tapok (2005-12-16 15:04:00) [3]hResInfo := FindResource(hInstance,'MAINICON',RT_ICON);
ShowMessage(SysErrorMessage(GetLastError));
Указанное имя ресурса не найдено в файле образа
Tapok (2005-12-16 15:02:00) [4]clickmaker © (16.12.05 14:59) [4]
может RT_ICON?
Сейчас попробую, но вроде RT_GROUP_ICON...
Tapok (2005-12-16 15:01:00) [5]Reindeer Moss Eater © (16.12.05 14:54) [3]
Если нужна икона приложения, то почему просто через Application.Icon не попробовать?
Нашел пример на С с ипользованием API и решил перевести все это на Delphi ради интереса...
clickmaker (2005-12-16 14:59:00) [6]может RT_ICON?
Reindeer Moss Eater (2005-12-16 14:54:00) [7]Возможно используешь не те функции для работы с конкретным типом ресурсов. Если нужна икона приложения, то почему просто через Application.Icon не попробовать?
Tapok (2005-12-16 14:52:00) [8]
Reindeer Moss Eater © (16.12.05 14:36) [1]
Ни одна функция не возвращает ошибки
Откуда это видно?
После вызова каждой функции я вставлял проверку
ShowMessage(SysErrorMessage(GetLastError)); из этого кода я ее убрал.
Reindeer Moss Eater (2005-12-16 14:36:00) [9]Ни одна функция не возвращает ошибки
Откуда это видно?