Frage

Gibt es eine Möglichkeit die zuletzt gestarteten Anwendungen aus dem Windows 7-Startmenü programmatisch zu reinigen?

Ich bin auf der Suche für einige Registry-Einträge und / oder Dateien zu löschen, so dass die entsprechenden Elemente in dem Winodws 7 Startmenü entfernt werden.

War es hilfreich?

Lösung 2

Nun ist dies die Lösung für meine Frage:

ich die Werte unter dem Registrierungsschlüssel Gereinigt

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

Dann ausgeführt ich folgende PInvoke den Cache des Explorer.exe zu aktualisieren:

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);
}

Viele Grüße, Boris

Andere Tipps

SHAddToRecentDocs (SHARD_PIDL, NULL) ist die dokumentierte Möglichkeit, die neuen Dokumente zu löschen, in der Registrierung nicht durcheinander wie surya vermuten läßt.

Da Ihre Frage das Wort „Anwendungen“ enthält Ich gehe davon aus, dass Sie tatsächlich die Liste der Anwendungen bedeuten werden, und es gibt keine wirkliche Möglichkeit, dass seit dieser Liste programmatisch zu ändern "gehört" den Benutzer .

Wenn Sie den undokumentierte hacky Weg gehen wollen, können Sie eine IContextMenu für die spezifische .lnk bekommen verwenden und rufen Sie den „Entfernen aus dieser Liste“ Befehl.

Unter XP das Startmenü Anwendungsnutzung in HKCU \ Software \ Microsoft \ Windows \ Currentversion \ Explorer \ Userassist gespeichert {75048700-EF1F-11D0-9888-006097DEACF9} aber Explorer wird diese Einträge zwischenzuspeichern, so dass Sie nicht nur löschen der Schlüssel ohne explorer zu töten zuerst.

In der Registry, unnötige Sachen löschen. Der Schlüssel ist HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top