![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Форматы иконки [D7, WinXP]
sco © (2006-03-19 14:41:00)Как узнать все форматы иконки какого то файла, ну к примеру 1.ico:
48x48 32bit
32x32 32bit
16x16 32bit
48x48 256
32x32 256
16x16 256
Как получить такую информацию?
VadMat (2006-07-05 14:09:00) [1]Предлагаю такой способ:
procedure TForm1.Button1Click(Sender: TObject);
var
fb:File of Byte;
bWidthHeight,bColorBit,bIconCount:Byte;
iIconNumber:Integer;
begin
AssignFile(fb,Edit1.Text);
Reset(fb);
iIconNumber:=0;
ListBox1.Items.Clear;
Seek(fb,4);
Read(fb,bIconCount);
repeat
Seek(fb,iIconNumber+6);
Read(fb,bWidthHeight);
Seek(fb,iIconNumber+12);
Read(fb,bColorBit);
ListBox1.Items.Add(IntToStr(bWidthHeight)+'x'+IntToStr(bWidthHeight)+', '+IntToStr(Trunc(Exp(bColorBit*Ln(2))))+' color');
iIconNumber:=iIconNumber+16;
Seek(fb,iIconNumber);
until (iIconNumber=(bIconCount)*16);
CloseFile(fb);
end;
У меня работает.
Poirot (2006-03-22 18:28:00) [2]http://kainsk.tomsk.ru/g2003/sys26/oswin.htm