Форум: "WinAPI";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];
ВнизЭкстракт иконки Найти похожие ветки
← →
Grinder (2004-01-08 14:55) [0]Мастера. Скажите.
Вот код.
ExtractIconEx(PChar(progpath),0,a,tr,1);
Т.е. вытаскиваем из экзешника иконки.
У меня эта штука стоит на таймере. Т.е. через определенный момент времени этот код повторяется. Но есть проблема.
на 4934 повторении и далее постоянно tr обращается в 0. Почему? Ведь иконка существует и на повторениях до 4934 нормально берется ее handle.
Может кто скажет ответ? А то я в тупике.
Вот лог программы
[08.01.2004 13:41:05] - Cannot show tray icon. 4934
[08.01.2004 13:42:13] - Cannot show tray icon. 4934
[08.01.2004 13:43:20] - Cannot show tray icon. 4934
4934 - это значение счетчика на момент терминейта. Счетчик идет от 0.
procedure Tsystensfame.iconupdaterTimer(Sender: TObject);
var
a,tr:HIcon;
i:integer;
begin
i:=iconupdater.Tag;
iconupdater.Tag:=iconupdater.Tag+1;
ExtractIconEx(PChar(progpath),0,a,tr,1);
if tr<>0 then
tray.Icon.Handle:=tr
else
begin
Log("Cannot show tray icon. "+IntToStr(i));
Application.Terminate;
end;
tray.Refresh;
end;
В проге искользуется компонент TCoolTrayIcon (но он тут ни при чем вроде, т.к. ошибка на ExtractIconEx).
Спасибо.
← →
BiN (2004-01-08 15:29) [1]а где DestroyIcon !!!!!!!@#$#$@#@%$#%$(&&)%&
← →
Grinder (2004-01-08 17:44) [2]Спасибо. Но где он тут нужен?
← →
Grinder (2004-01-08 18:06) [3]а спасибо
я про переменную a совсем забыл.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.03.14;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.013 c