There are two methods to clear the Frequently used applications on the Start Menu.
#1
One is by using group policy.
User Configuration > Administrative Templates > Start Menu and Taskbar > Remove frequent programs list from the Start Menu.
#2
The second one is by deleting the reg key that holds the shortcut data. Note, this data is encrypted using ROT-13 (yeah, I know…Microsoft strikes again). You may have to kill explorer.exe and reload it for it to take effect (or just reboot).
Frequent Apps
Reg Key
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{F4E57C4B-2036-45F0-A9AB-443BCFE33D9F}\Count
If you’re managing an enterprise—where computers have more than one user—the reg key must be deleted from each user’s reg hive. To scan through the respective registry hives, I created this script to do the scan and the reg key delete.
Script
This can run as System Account or Administrator.
Option Explicit Dim objShell, strComputer, objWMIService, objRegistry, strKeyPath, strValueName, strSubPath Dim objAccount, objSubkey, arrSubkeys, strValue, strUser on error resume next Set objShell = CreateObject("Wscript.Shell") Const HKEY_LOCAL_MACHINE = &H80000002 Const OverwriteExisting = TRUE strComputer = "." Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set objRegistry = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv") strKeyPath = "SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\ProfileList" objRegistry.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubkeys For Each objSubkey In arrSubkeys on error resume next strValueName = "ProfileImagePath" strSubPath = strKeyPath & "\" & objSubkey objRegistry.GetExpandedStringValue HKEY_LOCAL_MACHINE,strSubPath,strValueName,strValue Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2") Set objAccount = objWMIService.Get("Win32_SID.SID='" & objSubkey & "'") strUser = objAccount.AccountName objSubkey = trim(objSubkey)'trims whitespace strUser = trim(strUser)'trims whitespace 'LOGIC TO DETERMINE IF REGISTRY HIVE IS TO BE ACCESSED if strUser = "SYSTEM" then strUser="" if strUser = "LOCAL SERVICE" then strUser="" if strUser = "NETWORK SERVICE" then strUser="" 'if strUser = "ADMINISTRATOR" then strUser="" if strUser <> "" then on error resume next objShell.Run "%comspec% /c reg delete HKU\" & objSubkey & "\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{F4E57C4B-2036-45F0-A9AB-443BCFE33D9F}\Count" & " /f",0,true Wscript.Sleep 1000 end if Next ' Clear Session objShell = "" strComputer = "" objWMIService = "" objRegistry = "" strKeyPath = "" strValueName = "" strSubPath = "" objAccount = "" objSubkey = "" arrSubkeys = "" strValue = "" strUser = "" WScript.Quit(0)