Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.20;
Скачать: CL | DM;

Вниз

Загружать и сохранять в многоцветные иконки...   Найти похожие ветки 

 
Minori   (2004-06-08 21:54) [0]

Проблемма: есть иконка (цветов >=256 или около того), нужно ее сохранить на диск. Вызов SaveToFile вызывает ошибку "инвалидский битмап".
Кто знает, уделите немного времени. Спасибо.


 
able ©   (2004-06-08 21:55) [1]


> нужно ее сохранить на диск.

А в каком формате-то??


 
Minori   (2004-06-08 22:01) [2]

А в любом, но логичнее было бы в иконочном. *.ico


 
Gero ©   (2004-06-08 22:50) [3]

TIcon.SaveToFile


 
Minori   (2004-06-09 10:08) [4]

//TIcon.SaveToFile

Вот спасибо, ты верхний пост читал?
Так многоцветные иконки либо сохраняются с потерей "лишних" цветов, либо вообще не сохраняются, выдавая ошибку.


 
Gero ©   (2004-06-09 10:15) [5]


> Minori   (09.06.04 10:08)

Я обычно читаю посты.
Какая-то никому не известная функция SaveToFile, название которой к тому же совпадает с названиями медодов TBitmap, TIcon, TPicture и других классов.
Ты привел свой код? Нет?
Вот сначала приведи, а потом недовольство высказывать будешь.
Сколько цветов в иконке? Откуда ее берешь?


 
Minori   (2004-06-09 11:15) [6]

2 Gero
Неправ, извини...

Код приводить не буду - очень длинно получится. Да и похоже, что именно в этом месте ошибка.

Делаю прогу, которая из заданного каталога перебирает все exe-хи и dll-ы, ExtractIcon-ит их и сохраняет все иконки на диск. Так должно быть в идиале.
Когда прога добирается до определенных файлов типа "c:\windows\system32\osk.exe" в XP, все это дело вылетает с ошибкой <EInvalidGraphic with message "Bitmap image is not valid"> в момент Ticon.SaveToFile

Пример такой ошибки:

uses ShellApi...
...
procedure TForm1.Button1Click(Sender: TObject);
var ic: ticon;
begin
ic:= ticon.Create;
ic.Handle:=ExtractIcon(HInstance,"c:\windows\system32\osk.exe",1);
form1.Canvas.Draw(0, 0, ic);
ic.SaveToFile("c:\temp\1.ico");
end;


Но это только полбеды - все иконки, имеющие 256 и боле цветов, сохраняются с потерей цветности, хотя и отображаются в Сanvase.



Страницы: 1 вся ветка

Текущий архив: 2004.06.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.049 c
14-1086265716
pap
2004-06-03 16:28
2004.06.20
есть идея создать программу и $ выгодно продать


6-1083243303
Koba
2004-04-29 16:55
2004.06.20
Содержимое каталога


1-1086458686
EVP
2004-06-05 22:04
2004.06.20
Русский шрифт


1-1085493215
Виноградов Алексей
2004-05-25 17:53
2004.06.20
Файл текстового типа (textfile). Как узнать его размер ?


1-1086352731
Denis2003
2004-06-04 16:38
2004.06.20
Непрямоугольное меню