2011-01-13 2 views
2

Есть ли способ очистить недавно запущенные приложения из меню запуска Windows 7 программно?Очистить Windows 7 Меню «Пуск» Список MRU

Я ищу некоторые записи в реестре и/или файлы для удаления, поэтому соответствующие элементы в меню запуска Winodws 7 удаляются.

ответ

0

Теперь это решение моего вопроса:

Я Убирал значения под ключами реестра

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{CEBFF5CD-ACE2-4F4F-9178-9926F41749EA}\Count 
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{F4E57C4B-2036-45F0-A9AB-443BCFE33D9F}\Count 

Тогда я выполнил следующую PInvoke, чтобы обновить кэш Explorer.exe:

C#:

using System.Runtime.InteropServices; 
[DllImport("shell32.dll")] 
static extern void SHChangeNotify(int wEventId, int uFlags, IntPtr dwItem1, IntPtr wItem2); 

private const int SHCNE_ASSOCCHANGED = 0x08000000; 
private const int SHCNF_IDLIST = 0x0000; 

private void ClearCache() 
{ 
SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, IntPtr.Zero, IntPtr.Zero); 
} 

С уважением, Boris

-1

В реестре удалите ненужные вещи. Ключ HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs

+0

Это только половина работы, в последней папке оболочки документов полно ярлыков – Anders

+0

Спасибо за ответ! Я хотел бы найти способ найти способ удалить самые последние элементы приложения Startes из меню «Пуск» Windows 7. – Boris

2

SHAddToRecentDocs (SHARD_PIDL, NULL) - это документально подтвержденный способ очистки последних документов, а не беспорядок в реестре, как предлагает сурия.

Поскольку ваш вопрос включает слово «приложения», я предполагаю, что вы на самом деле означаете список приложений, и нет реального способа модифицировать его программно с этого списка "belongs" to the user.

Если вы хотите пройти недокументированный хакерский маршрут, вы можете использовать IContextMenu для конкретного .lnk и вызвать команду «Удалить из этого списка».

В XP использование приложения в стартовом меню хранится в HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ UserAssist {75048700-EF1F-11D0-9888-006097DEACF9}, но проводник будет кэшировать эти записи, чтобы вы не могли просто сначала удалите ключ, не убивая проводника.

+0

Привет! Я очистил недавно запущенные приложения из меню «Пуск» Windows 7, очистив ключ UserAssist в реестре. К сожалению, мне пришлось перезапустить Explorer.exe, чтобы обновить кеш Explorer.exe. Может ли быть лучший способ обновить кеш exeplorer.exe? – Boris

Смежные вопросы