Clearing Windows Start Dialog History Without Rebooting

I am currently working on a program to immediately clear the list of previously executed commands that appear in the "Start → Start Windows" dialog box. The procedure for clearing this list by deleting the key HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ RunMRU is well documented ; however, before these changes take effect, it seems necessary to do one of the following:

  • Reboot the computer.
  • Choose Start → Shut Down, and then Cancel.

None of them are ideal for the task I'm trying to accomplish: # 1 is extremely destructive for the user, and # 2 requires additional user interaction.

Does anyone know how to immediately (and programmatically) force this information to reload without requiring any interaction with the user, as well as minimizing the disruption of another user? I would like the user to run a story that needs to be cleared immediately after the execution of my program, without any further actions on their part (for example, using the "Shutdown" → "Cancel" trick in # 2 above) or forcing a reboot.

Or, to approach the problem from a different angle: When you click "Start" → "Shutdown" → "Cancel", Windows Explorer reloads the RunMUI key. Is there a way to force a similar reboot without the user selecting “Shut Down” and then “Cancel”?

Things I've already tried:

  • Monitor the status of explorer.exe using procmon when choosing Shutdown and then Cancel. I see that Explorer is writing the RunMRU key, but was unable to determine what causes this.
  • Numerous Google searches in the lines "reboot runmru without rebooting." Most results still recommend Method # 1 above, although some suggest # 2.
  • Limited validation of the MSDN API. The RegFlushKey call seems promising, but I haven't used it before, so I don't know if it will be applied to registry cache information by various processes.

Any suggestions or other information are welcome.

+6
windows privacy registry windows-explorer
source share
7 answers

Have you tried ccleaner?

http://www.ccleaner.com/

+1
source share

Not a complete answer to your question, but I found a third way to initiate cleaning up the launch command from this article in Mag PC.

Killing explorer.exe, and then restarting it, will also clear the startup list after changing the registry.

0
source share

I have an unpleasant hack for you. Show the window programmatically, immediately hide it (programmatically) and click "Cancel" (well, you guessed it, programmatically).

Perhaps you are trying to find a flash API for the cache or others, I would not be too surprised if they had side effects like the ones you are looking for.

0
source share

I saw instances where it really works, even the F5 key doesn't work? Try this, ctrl> alt> delete, then go to the task manager, launch the tab ... end explorer.exe. Then click on the new task file and enter explorer.exe, then check ... does it work?

0
source share

Windows XP

  • Right click on taskbar
  • Menu Properties
  • Start Menu Tab
  • Setup button
  • Program panel
  • clear the list
  • Click OK

This calls the Windows API function, which updates the explorere.exe taskbar process and also deletes the list (there is no need to make changes to the registry).

0
source share

As far as I know, it relies on the explorer.exe process, which will launch the start menu / taskbar / desktop, closing and reopening. There is no “clean” way to do this that I know of.

If you really need to do this without user interaction, you need to close all explorer.exe processes and restart them.

Here is a rudimentary program in C # to do this;

using System.Diagnostics; Process[] procs = Process.GetProcessesByName("explorer"); foreach (Process proc in procs) { proc.Kill(); } Process.Start("explorer.exe"); 

Please note that this will close all Windows Explorer windows and may or may not open the additional “Windows Explorer” afterwards.

I just tested this on Windows XP 32bit and it really cleared the Run command cache.

0
source share

HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ RunMRU \

-4
source share

All Articles