reactos/base/applications
Whindmar Saksit 51a89791c1 [RAPPS] Validate DisplayIcon value and support icon index (#5664)
- If the DisplayIcon value points to an invalid path, ExtractIconW()
  can return 1! ExtractIconExW() does not have this problem nor the -1 issue.
  Reference: https://devblogs.microsoft.com/oldnewthing/20050526-07/?p=35533
- Use the icon index from PathParseIconLocationW().

Addendum to c6c7fc1. CORE-19317

Test to reproduce:

```
@echo off
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Ex1 /v DisplayName /d "Ex1 Normal" /f
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Ex1 /v DisplayIcon /d "%windir%\explorer.exe" /f
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Ex1 /v UninstallString /d "calc.exe" /f
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Ex2 /v DisplayName /d "Ex2 Bad icon path" /f
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Ex2 /v DisplayIcon /d "%windir%\DoesNotExist.exe" /f
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Ex2 /v UninstallString /d "calc.exe" /f
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Ex3 /v DisplayName /d "Ex3 Resource index" /f
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Ex3 /v DisplayIcon /d "%windir%\explorer.exe,4" /f
reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Ex3 /v UninstallString /d "calc.exe" /f
start appwiz.cpl
```
2023-11-20 20:50:42 +03:00
..
atactl
cacls
calc [CALC] Adapt to <strsafe.h> (#5894) 2023-11-19 21:46:00 +09:00
charmap [TRANSLATION] Update Russian (ru-RU) translation (#5953) 2023-11-15 02:00:36 +03:00
charmap_new
clipbrd [CLIPBRD] Update Romanian (ro-RO) translation (#5909) 2023-11-08 20:01:58 +01:00
cmdutils [TASKKILL] Update Romanian (ro-RO) translation (#5954) 2023-11-16 13:33:55 +01:00
control
drwtsn32
dxdiag [DXDIAG] Update Romanian (ro-RO) translation (#5955) 2023-11-15 10:57:15 +01:00
extrac32
findstr
fltmc [FLTMC] Update Romanian (ro-RO) translation (#5956) 2023-11-15 10:57:50 +01:00
fontview [FONTVIEW] Update Romanian (ro-RO) translation (#5371) 2023-07-01 22:59:49 +02:00
games [SOLITAIRE] Update Romanian (ro-RO) translation (#5911) 2023-11-08 10:24:05 +00:00
hh
iexplore [IEXPLORE][IEFRAME][SHELL32] Add Internet icon on Desktop (#5451) 2023-07-22 19:28:37 +09:00
kbswitch [KBSWITCH] Update layout list on WM_NOTIFYICONMSG 2023-10-30 10:40:27 +09:00
logoff
magnify [MAGNIFY] Update Romanian (ro-RO) translation (#5964) 2023-11-15 10:56:39 +01:00
mmc [MMC] Update Romanian (ro-RO) translation (#5912) 2023-11-08 10:26:33 +00:00
mplay32 [REACTOS] Do not free shared icon for ShellAbout() calls (#5519) 2023-08-09 11:53:13 +02:00
msconfig [MSCONFIG] Update Romanian (ro-RO) translation (#5967) 2023-11-15 11:00:40 +01:00
msconfig_new [MSCONFIG_NEW] Update Romanian (ro-RO) translation (#5968) 2023-11-15 11:02:12 +01:00
mscutils [EVENTVWR] Update Romanian (ro-RO) translation (#5979) 2023-11-15 11:01:46 +01:00
mshta
mspaint [MSPAINT] Introduce partial image history (#5994) 2023-11-19 12:59:39 +09:00
mstsc [MSTSC] Update Romanian (ro-RO) translation (#5959) 2023-11-14 14:00:32 +00:00
network [ARP][MC] Add Romanian (ro-RO) translation to message table (#5440) 2023-07-17 00:12:33 +03:00
notepad [NOTEPAD] Update Romanian (ro-RO) translation (#5981) 2023-11-15 10:51:38 +01:00
osk [REACTOS] Do not free shared icon for ShellAbout() calls (#5519) 2023-08-09 11:53:13 +02:00
rapps [RAPPS] Validate DisplayIcon value and support icon index (#5664) 2023-11-20 20:50:42 +03:00
rapps_com
regedit [REGEDIT] Update Romanian (ro-RO) translation (#5961) 2023-11-15 10:59:01 +01:00
regedt32
runas
sc
screensavers [LOGON] Several improvements for screensaver (#5641) 2023-09-03 21:18:23 +02:00
sdbinst
setup16
shutdown
sndrec32 [SNDREC32] Update Romanian (ro-RO) translation (#5916) 2023-11-08 20:04:46 +01:00
sndvol32
taskmgr [TASKMGR] Harmonize and beautify the borders in performance tab (#5949) 2023-11-14 13:57:17 +00:00
utilman [SERVICES][SETUPLIB][UMANDLG][USETUP] Add missing \n to DPRINT() calls (#5983) 2023-11-16 22:22:12 +00:00
winhlp32
winver
wordpad [WORDPAD] Update Romanian (ro-RO) translation (#5917) 2023-11-08 20:04:18 +01:00
write
wusa
CMakeLists.txt