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

Вниз

Получить иконку запущенного приложения   Найти похожие ветки 

 
Осирис ©   (2002-09-30 16:17) [0]

Добрый день.

С помощью функции EnumWindows получил список окон. Выбрал из них только видимые:

WL:= GetWindowLong(handle, GWL_STYLE); //Достаем стиль окна
if (wl and $10000000)<>0 then begin

Теперь пытаюсь получить иконку этого файла:

function GetIcon(wnd:hwnd):TIcon;
begin
result:=TIcon.Create; //Создаем иконку
result.Handle:=GetClassLong(wnd,GCL_HICON);
end;

icon:=GetIcon(handle);

Столкнулся с тем, что не у всех запущенных приложений получается получить иконку. В чем дело ? Дело в том, что в TaskBar"e это приложение отображается корректно с соответсвующей иконкой.


 
Игорь Шевченко ©   (2002-09-30 16:23) [1]

В кладовке в разделе "Готовые программы" лежит программа EnumFunctions, там есть отображение иконок всех видимых окон.


 
Осирис ©   (2002-09-30 17:09) [2]

Исходный код еще не смотрел, но exe-шник запустил. Все таки не все иконки он она показывает: есть такая прога My Notes Center (www.mynotescenter.com - это их сайт (ксати для русских прога бесплатна)) - вот ее иконку выцепить не получается. Сейчас не могу проверить, но есть подозрение, что и Frigate не покажет свою икону. Если попробовать открыть exe-шники этих програм каким-либо редактором программ, то ресурсов в них найти не получается. Однако виндовый таскбар все таки отбражает иконки этих прог, каким образом ?


 
Игорь Шевченко ©   (2002-09-30 17:11) [3]

Осирис © (30.09.02 17:09)

Есть многое на свете, друг Горацио...


 
Осирис ©   (2002-09-30 17:28) [4]

>> Есть многое на свете, друг Горацио...

Это означает, "кто ж его знает" ????

Хм... Мастера "умывают руки" ???

Нужен алгоритм, который по handle запущенного приложения 100% вытащит его иконку. Это так сложно или решение лежит в области недокументированных возможностей Windows ?


 
Игорь Шевченко ©   (2002-09-30 17:31) [5]

Осирис © (30.09.02 17:28)

Я в программе определил примерный алгоритм, определил примерный набор функций. Трудно дальше идею развить ?


 
Smithson ©   (2002-09-30 17:57) [6]

Слушай, если в файле НЕТ ресурса-иконки, то вытаскивать нечего!!!
Если taskbar ее все-таки показывает, то это значит, что она назначена программе внешним образом (pif-файл, например).



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

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

Наверх




Память: 0.48 MB
Время: 0.018 c
3-31612
zx
2002-09-16 14:09
2002.10.10
Нужен совет


7-32029
Ffaster
2002-07-31 01:29
2002.10.10
Как из своей проги запустить остановить Сервер удалённого доступа


1-31765
Петя
2002-10-01 14:40
2002.10.10
А Есть ли такой компанент???


14-31959
Tihas
2002-09-12 18:23
2002.10.10
Здесь есть кто с ДВГТУ ФИКТ АСУ ?


14-31985
MaximatorVeter
2002-09-16 14:58
2002.10.10
Какая последняя версия у след. пакетов: