When Cleaning the registry I see this reported :-
Invalid firewall rule MCX-In-TCP - %SystemRoot%\ehome\ehshell.exe HKLM\SYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-Out-TCP - %SystemRoot%\ehome\ehshell.exe HKLM\SYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-In-UDP - %SystemRoot%\ehome\ehshell.exe HKLM\SYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-Out-UDP - %SystemRoot%\ehome\ehshell.exe HKLM\SYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-Prov-Out-TCP - %SystemRoot%\ehome\mcx2prov.exe HKLM\SYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-McrMgr-Out-TCP - %SystemRoot%\ehome\mcrmgr.exe HKLM\SYSTEM\ControlSet001\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-In-TCP - %SystemRoot%\ehome\ehshell.exe HKLM\SYSTEM\ControlSet002\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-Out-TCP - %SystemRoot%\ehome\ehshell.exe HKLM\SYSTEM\ControlSet002\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-In-UDP - %SystemRoot%\ehome\ehshell.exe HKLM\SYSTEM\ControlSet002\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-Out-UDP - %SystemRoot%\ehome\ehshell.exe HKLM\SYSTEM\ControlSet002\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-Prov-Out-TCP - %SystemRoot%\ehome\mcx2prov.exe HKLM\SYSTEM\ControlSet002\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules Invalid firewall rule MCX-McrMgr-Out-TCP - %SystemRoot%\ehome\mcrmgr.exe HKLM\SYSTEM\ControlSet002\services\SharedAccess\Parameters\FirewallPolicy\FirewallRules
At first that seems reasonable because things like ehshell.exe are NOT located where the registry is stating.
In fact there is no folder %SystemRoot%\ehome\
Now I am unsure because 64 bit Windows lies to 32 bit applications with misdirections about system32 and sysWow64.
Is it also concealing the truth from 64 bit CCleaner and myself ?
When I searched for "ehome" I found it actually existed in Winsxs.
Winsxs is more Windows "magic" which I think holds multiple versions of the "same" DLL,
and with "Smoke and Mirrors" tricks Windows allows an application to use the version it needs, thus avoiding DLL HELL.
If different applications can use different versions of %SystemRoot%\ehome\ehshell.exe due to Windows magic
Is it possible that %SystemRoot%\ehome\ehshell.exe will only appear when the appropriate application calls for it,
but because HKLM does not define any version then CCleaner fails to invoke a valid version when it summons the EXE to appear
I think CCleaner is correct to remove the registry key, but I like to triple check.
There is no folder %SystemRoot%\ehome\
But Winsxs has a bucket load.
It holds 73.6 MB in 92 Files in 71 folders under the names amd64_microsoft-windows-ehome_*
and another 2.41 MB in 5 files in 5 folders under the names wow64_microsoft-windows-ehome_*
Should CCleaner remove this 76 MB of redundant obsolete junk,
or would Windows have a temper tantrum ?
Personally I would prefer DLL HELL instead of winsxs which has caused me "SideBySide" errors ! !
Regards
Alan