Форум: "Начинающим";
Текущий архив: 2007.02.04;
Скачать: [xml.tar.bz2];
ВнизИспользование встроеных ресурсов Найти похожие ветки
← →
Mr.Devil © (2007-01-18 09:48) [0]Пытаюсь извлечь из своего приложения, например, иконку ехе-файла, возникает ошибка "EResNotFound". Что у меня не так? Ресурс "MAINICON" точно есть.
procedure TForm1.Button1Click(Sender: TObject);
var icon:TbitMap ;
begin
icon:=TBitMAp.Create;
icon.LoadFromResourceName(HInstance,"MAINICON");
form1.Canvas.Draw(0,0,icon);
icon.Free;
end;
← →
Mr.Devil © (2007-01-18 09:55) [1]Вот как [url=http://delphimaster.ru/cgi-bin/faq.pl?look=1&id=988622425&n=19]тут[/url] написано тоже не работает..
← →
MBo © (2007-01-18 10:08) [2]MAINICON - иконка, а не битмап
← →
Mr.Devil © (2007-01-18 10:16) [3]Ошибка возникает здесь
icon.LoadFromResourceName(HInstance,"MAINICON");
К тому же с битмапом та же фигня получается.
← →
MBo © (2007-01-18 10:23) [4]метод TBitmap.LoadFromResourceName ищет ресурс с типом RT_BITMAP и именем "MAINICON", которого, естественно, нет
← →
Сергей М. © (2007-01-18 10:42) [5]
> Mr.Devil © (18.01.07 10:16) [3]
Ресурс с именем "MAINICON" имеет тип RT_GROUP_ICON, а не RT_ICON.
Интересующая тебя иконка имеет ID=1, грузи ее так:
procedure TForm1.Button1Click(Sender: TObject);
var
rs: TResourceStream;
icon: TIcon;
begin
icon:= TIcon.Create;
rs := TResourceStream.CreateFromId(hInstance, 1, RT_ICON);
icon.LoadFromStream(rs);
self.Canvas.Draw(0,0,icon);
icon.Free;
rs.Free;
end;
← →
Mr.Devil © (2007-01-18 11:04) [6]
> rs := TResourceStream.CreateFromId(hInstance, 1, RT_ICON);
Тоже не работает :( Пишет "Ошибка чтения по адресу 00000001"
Попробовал так:procedure TForm1.Button1Click(Sender: TObject);
var R:TResourceStream;
ResType: PChar;
begin
ResType:="RT_ICON";
R:=TResourceStream.CreateFromID(HInstance,1,ResType);
R.Free;
end;
← →
Сергей М. © (2007-01-18 11:10) [7]
> Mr.Devil © (18.01.07 11:04) [6]
> Тоже не работает
У меня все работает.
← →
Mr.Devil © (2007-01-18 11:28) [8]Хммм... вставил твой код, работает.. тока иконка отображается не та, что в проводнике видна, а как на досовских ехе-шниках. Но суть я понял.
И я нашел ошибку :))))
У тебя "(hInstance, 1, RT_ICON)"
А у меня "(HInstance, 1, "RT_ICON")"
Фсем спасибо! :)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.02.04;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.041 c