Получение из реестра и отображение в ListView иконок установленных программ - C#
Формулировка задачи:
Ситуация следующая. Пишу программу по сбору инфы об установленном по на компе (копаю в реестре). Сейчас мне нужно получить из реестра иконку программы и вывести ее в Listview. Нашел в инете, что инфа об иконке есть в ключе "DisplayIcon". Делаю следующим способом
.
На сервер льется следующее значение:0x000001000D00101010000100040028010000D60000.....
Загрузить с сервера в listview пока не могу.
Вопрос собственно в следующем. Вообще-то в правильную сторону я копаю, может есть другие способы получения иконок установленных программ, может у кого есть интересные ссылки по этой теме или какие нибудь предложения?
Буду очень признателен тем, кто не пройдет стороной данную тему!
if ((subkey.GetValue("DisplayIcon").ToString().Substring(subkey.GetValue("DisplayIcon").ToString().Length - 3, 3) == "ico")) //|| (subkey.GetValue("DisplayIcon").ToString().Substring(subkey.GetValue("DisplayIcon").ToString().Length - 3, 3) == "exe")) { try { byte[] ff = File.ReadAllBytes(subkey.GetValue("DisplayIcon").ToString()); mynewrow.ItemArray = new object[] { null, frmFindPc.idPc, subkey.GetValue("DisplayName"), (subkey.GetValue("InstallDate")), (datascan.Substring(0, 10) + " " + timescan.Substring(0, 8)), ff }; //,Convert.ToByte(ico) dsSoftPc.Tables["Soft"].Rows.Add(mynewrow); } catch { //сторонний код// } } else { mynewrow.ItemArray = new object[] { null, frmFindPc.idPc, subkey.GetValue("DisplayName"), (subkey.GetValue("InstallDate")), (datascan.Substring(0, 10) + " " + timescan.Substring(0, 8)) }; //,Convert.ToByte(ico) dsSoftPc.Tables["Soft"].Rows.Add(mynewrow); }
Решение задачи: «Получение из реестра и отображение в ListView иконок установленных программ»
textual
Листинг программы
System.Drawing.Icon icon = System.Drawing.Icon.ExtractAssociatedIcon(fileName);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д