Windows 7 如何通过编程将显示跳转列表的项目固定到WIN7的“开始”菜单
我想在“开始”菜单中添加一项,以显示用户可以启动的应用程序列表。有点像定制菜单。我得到了WinAPI代码包,并了解我可以使用弹出菜单部分的跳转列表。但我不知道如何才能在“开始”菜单上添加内容。我正在寻找与IE显示内容类似的内容。能够使用Shell32库实现这一点Windows 7 如何通过编程将显示跳转列表的项目固定到WIN7的“开始”菜单,windows-7,startmenu,jump-list,Windows 7,Startmenu,Jump List,我想在“开始”菜单中添加一项,以显示用户可以启动的应用程序列表。有点像定制菜单。我得到了WinAPI代码包,并了解我可以使用弹出菜单部分的跳转列表。但我不知道如何才能在“开始”菜单上添加内容。我正在寻找与IE显示内容类似的内容。能够使用Shell32库实现这一点 public static class VerbNames{ public static string PinToStartMenu = "Pin to Start Men&u"; public static s
public static class VerbNames{
public static string PinToStartMenu = "Pin to Start Men&u";
public static string UnpinFromStartMenu = "Unpin from Start Men&u";
public static string PinToTaskbar = "Pin to Tas&kbar";
public static string UnpinFromTaskbar = "Unpin from Tas&kbar";
}
public static class DesktopUtil {
public static void PinItemToStartMenu(string itemPath, string itemName) {
DoItemVerb(itemPath, itemName, VerbNames.PinToStartMenu);
}
public static void UnpinItemFromStartMenu(string itemPath, string itemName) {
DoItemVerb(itemPath, itemName, VerbNames.UnpinFromStartMenu);
}
public static void PinItemToTaskbar(string itemPath, string itemName) {
DoItemVerb(itemPath, itemName, VerbNames.PinToTaskbar);
}
public static void UnpinItemFromTaskbar(string itemPath, string itemName) {
DoItemVerb(itemPath, itemName, VerbNames.UnpinFromTaskbar);
}
private static void DoItemVerb(string itemPath, string itemName, string verb) {
Shell32.Shell shell = new Shell32.Shell();
Shell32.Folder folder = shell.NameSpace(itemPath);
Shell32.FolderItem item = folder.ParseName(itemName);
DoItemVerb(item, verb);
}
private static void DoItemVerb(Shell32.FolderItem item, string verbToDo) {
Shell32.FolderItemVerbs verbs = item.Verbs();
foreach (Shell32.FolderItemVerb verb in verbs) {
if (verb.Name.Equals(verbToDo)) {
verb.DoIt();
}
}
}
}