C#实现将程序锁定到Win7任务栏的方法

2019-12-26 13:24:07王振洲

易采站长站为您分析C#实现将程序锁定到Win7任务栏的方法,涉及C#调用Shell类的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C#实现将程序锁定到Win7任务栏的方法。。具体实现方法如下:

Win7Taskbar类:

  1. using System;  using System.Collections.Generic; 
  2. using System.Text;  using Shell32; 
  3. using System.IO;  namespace TestWin7Taskbar 
  4. {  class Win7Taskbar 
  5. {  public static bool LockApp(bool isLock, string appPath) 
  6. {  Shell shell = new Shell(); 
  7. Folder folder = shell.NameSpace(Path.GetDirectoryName(appPath));  FolderItem app = folder.ParseName(Path.GetFileName(appPath)); 
  8. string sVerb = isLock ? "锁定到任务栏(&K)" : "从任务栏脱离(&K)";  foreach (FolderItemVerb Fib in app.Verbs()) 
  9. {  if (Fib.Name == sVerb) 
  10. {  Fib.DoIt(); 
  11. return true;  } 
  12. }  return false; 
  13. }  } 


调用方法:

  1. string appPath = @"C:Windowsnotepad.exe";  Console.WriteLine(Win7Taskbar.LockApp(true, appPath) ? "锁定程序成功" : "锁定程序失败"); 
  2. Console.ReadKey();  Console.WriteLine(Win7Taskbar.LockApp(false, appPath) ? "解锁程序成功" : "解锁程序失败"); 


PS:

1.这个只适合中文系统,其他语言系统,请自己鼠标右键程序找Verb名换上即可

2.必须要引用 Interop.Shell32.dll

希望本文所述对大家的C#程序设计有所帮助。