I’m trying to do an application that basically emulates the add /remove programs feature of Windows Control Panel. I’m currently using the registry, I don’t use
WMI because is SO SLOW and only returns the software installed by a .msi file, There are the keys I’m currently reading:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall HKCU\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall
and i have i think all the software installed but there is a problem with the icons, i dont know how to extract the icons that appear on control panel. Some keys have a DisplayIcon property but some other doesn’t. I try two things:
First extract the icon for the Application on the DisplayIcon Key.
Second, Try to identify the C:\Windows\Installer\FOLDER to extract a icon for some file there. But is not perfect, i obtain only about 80% of the icons. I know there is a lot of programs that can do this very well.. for example “SoftwareInformer“.
I read about it and i found information about ARPPRODUCTICON and WiX an a Icon Table, but i’m not sure where is that table and is there any way to access to it.
Also i search for an open source application that do this without luck.
I maybe too late for the party, but if you check under the
you’ll find “ProductIcon” string value with path (not for all products though).
I think its basically the same as in {sys_drive}:\Windows\Installer{GUID} folder. But even “Programs & Features” doesn’t show all the icons.
PS: And, of course I cant post an image, ’cause I don’t have enough points, doh..