Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2009.10.11;
Скачать: [xml.tar.bz2];

Вниз

Иконки установленых приложений   Найти похожие ветки 

 
BaD.P1nG   (2008-07-18 10:54) [0]

Проблема такая: получаю список установленых приложений и HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. Через DisplayIcon или ModifyPath вытаскиваю часть иконок. Но часть приложений не хранит в реестре эти параметры. Сам исполняемый файл не всегда имеет имя, совпадающее с названием приложения. Где еще стоит поискать(и что бы не зависеть от языка системы)? Может кто-нибудь знает, как стандартная "установка/удаление" получает иконки приложений?
Благодарю за внимание!


 
multiflex   (2008-07-18 11:21) [1]

тут 2 варианта
1. используеш иконку унинсталлера (как это и в винде сделано) - параметр "UninstallString"
2. ищеш по GUID в HKEY_CLASSES_ROOT\Installer\Products, параметр "ProductIcon" (вот у меня например это The Bat!, PCAD, 1c, Framework, PartitionMagic....)


 
MultIfleX   (2008-07-18 11:24) [2]

GUID"om является имя раздела, к примеру HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{90110 419-6000-11D3-8CFE-0150048383C9}


 
BaD.P1nG   (2008-07-18 11:28) [3]

Винда использует в установке/удалении не иконку униинсталлера.(сравнивал) А вто ворой способ интересен. Спасибо!


 
BaD.P1nG   (2008-07-18 11:32) [4]

Хм, оказалось, что и это еще не позволяет извлечь все иконки...Но еще часть работы сделано, спасибо Вам, MultIfleX!


 
MultIfleX   (2008-07-18 14:32) [5]


> Винда использует в установке/удалении не иконку униинсталлера.
> (сравнивал) А вто ворой способ интересен. Спасибо!

именно её, если ничего больше не осталось, тож сравнивал ;-) правдо у меня таких тока 3


 
BaD.P1nG   (2008-07-18 14:57) [6]

Но вот ищу уже тремя способами. но еще не все нашел, а она находит... Причем мониторил реестр, Винда не находит многих путей, а иконки выводит корректные... могу предположить, что просто ищет в папке унинсталлера, но ведь имя исполняемого файла не всегда сопадает с названием продукта(тот же акробат ридер)


 
MultIfleX   (2008-07-25 07:42) [7]

Ща глянул - вродебы все прозрачно, смотри:
береш тотже гуид, который и раньше брал, но для которого вышеуказанным способом иконка не нашлась. к примеру у оффиса у меня {90110419-6000-11D3-8CFE-0150048383C9}

преобразуеш ProductCode в ID_Number:

{90110419-6000-11D3-8CFE-0150048383C9} 9140110900063D11C8EF10054038389C
{90110419-6000-11D3-8CFE-0150048383C9} 9140110900063D11C8EF10054038389C
{90110419-6000-11D3-8CFE-0150048383C9} 9140110900063D11C8EF10054038389C
{90110419-6000-11D3-8CFE-0150048383C9} 9140110900063D11C8EF10054038389C

{90110419-6000-11D3-8CFE-0150048383C9} 9140110900063D11C8EF10054038389C

{90110419-6000-11D3-8CFE-0150048383C9} 9140110900063D11C8EF10054038389C

{90110419-6000-11D3-8CFE-0150048383C9} 9140110900063D11C8EF10054038389C

{90110419-6000-11D3-8CFE-0150048383C9} 9140110900063D11C8EF10054038389C

идеш в HKEY_CLASSES_ROOT\Installer\Products\ID_Number и опля, видиш  параметр ProductIcon

ЗЫ. Тебе зачем список прог?? Если делаеш путевый унинсталлер, дай посмотреть ;)


 
ZDO   (2008-08-18 22:32) [8]

Я не знаю, поможет это или нет, но я когда делал прогу для мониторинга автозагрузки, то пользовался функцией WinAPI ExtractIcon. Возможно тебе это не подойдет, ибо я до конца не врубился в суть проблемы, но все равно.:)



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

Форум: "WinAPI";
Текущий архив: 2009.10.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.006 c
15-1250141829
pvr
2009-08-13 09:37
2009.10.11
Управление фотоаппаратом


2-1249655586
andi
2009-08-07 18:33
2009.10.11
сортировка


15-1249068357
картман
2009-07-31 23:25
2009.10.11
Не вызывается функция dll из clr-ХП


15-1249556339
desc
2009-08-06 14:58
2009.10.11
Несовсем понятно чем отличается...


15-1249504206
Юрий
2009-08-06 00:30
2009.10.11
С днем рождения ! 6 августа 2009 четверг





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский