c#设置从网络共享运行的应用程序的JumpList

时间:2012-12-10 21:52:48

标签: c# shell windows-7 windows-server-2008 jump-list

我需要为运行在2008服务器上的c#应用程序设置跳转列表快捷方式,但安装了跳转列表的计算机正在运行Windows 7。

当app在本地运行时,我没有设置跳转列表的问题,所以我知道代码可以工作。我想知道我是否错过了一个步骤或某些事情(希望)对于有更多经验的人来说是显而易见的。

编辑 [应用程序是否在运行服务器的win7计算机上运行?可能是因为我(在不知不觉中)试图将JumpList快捷方式添加到08服务器开始菜单中吗?我刚开始以谋生为生,我甚至不知道我缺少什么,感谢任何帮助! ]

添加“我的”代码以防它可以提供帮助:

#region Win7 Specific Code
            if (m.Msg == Windows7Taskbar.TaskbarButtonCreatedMessage)
            {
                try
                {

                    jlm = new JumpListManager(appID);
                    jlm.UserRemovedItems += delegate { };

                    string strAppDir = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);
                    app = Assembly.GetEntryAssembly().GetName().Name + ".exe";

                    jlm.AddUserTask(new ShellLink
                    {
                        Title = "Smart Client",
                        Path = Path.Combine(strAppDir, app),
                        Arguments = "sc",
                        IconLocation = Path.Combine(strAppDir, @"ico\a.ico")
                    });

                    jlm.AddUserTask(new ShellLink
                    {
                        Title = "Web Client",
                        Path = Path.Combine(strAppDir, app),
                        Arguments = "wc",
                        IconLocation = Path.Combine(strAppDir, @"ico\b.ico")
                    });

                    jlm.AddUserTask(new ShellLink
                    {
                        Title = "TSQL Solution",
                        Path = Path.Combine(strAppDir, app),
                        Arguments = "ts",
                        IconLocation = Path.Combine(strAppDir, @"ico\c.ico")
                    });

                    jlm.AddUserTask(new ShellLink
                    {
                        Title = "C# Solution",
                        Path = Path.Combine(strAppDir, app),
                        Arguments = "cs",
                        IconLocation = Path.Combine(strAppDir, @"ico\d.ico")
                    });

                    jlm.AddUserTask(new ShellLink
                    {
                        Title = "Report Solution",
                        Path = Path.Combine(strAppDir, app),
                        Arguments = "rs",
                        IconLocation = Path.Combine(strAppDir, @"ico\e.ico")
                    });
                    jlm.Refresh();

提前感谢您提供的任何指导。

  • 萨姆

1 个答案:

答案 0 :(得分:0)

最终解决方案是构建一个行为类似于跳转列表的应用程序。据我所知,从网络共享加载时无法实现我的结果。