首页 > 编程 > C# > 正文

C#实现刷新桌面的方法

2019-10-29 21:38:23
字体:
来源:转载
供稿:网友

这篇文章主要介绍了C#实现刷新桌面的方法,涉及C#基于shell32.dll动态链接库实现系统桌面刷新的技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C#实现刷新桌面的方法。分享给大家供大家参考。具体如下:

 

 
  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Linq; 
  4. using System.Text; 
  5. using System.Runtime.InteropServices; 
  6. namespace FileEncryptProject.Algorithm 
  7. public class DesktopRefurbish 
  8. /// <summary> 
  9. /// 桌面刷新 
  10. /// </summary> 
  11. [DllImport("shell32.dll")] 
  12. public static extern void SHChangeNotify(HChangeNotifyEventID wEventId, HChangeNotifyFlags uFlags, IntPtr dwItem1, IntPtr dwItem2); 
  13. public static void DeskRef() 
  14. SHChangeNotify(HChangeNotifyEventID.SHCNE_ASSOCCHANGED, HChangeNotifyFlags.SHCNF_IDLIST, IntPtr.Zero, IntPtr.Zero); 
  15. #region public enum HChangeNotifyFlags 
  16. [Flags] 
  17. public enum HChangeNotifyFlags 
  18. SHCNF_DWORD = 0x0003, 
  19. SHCNF_IDLIST = 0x0000, 
  20. SHCNF_PATHA = 0x0001, 
  21. SHCNF_PATHW = 0x0005, 
  22. SHCNF_PRINTERA = 0x0002, 
  23. SHCNF_PRINTERW = 0x0006, 
  24. SHCNF_FLUSH = 0x1000, 
  25. SHCNF_FLUSHNOWAIT = 0x2000 
  26. #endregion//enum HChangeNotifyFlags 
  27. #region enum HChangeNotifyEventID 
  28. [Flags] 
  29. public enum HChangeNotifyEventID 
  30. SHCNE_ALLEVENTS = 0x7FFFFFFF, 
  31. SHCNE_ASSOCCHANGED = 0x08000000, 
  32. SHCNE_ATTRIBUTES = 0x00000800, 
  33. SHCNE_CREATE = 0x00000002, 
  34. SHCNE_DELETE = 0x00000004, 
  35. SHCNE_DRIVEADD = 0x00000100, 
  36. SHCNE_DRIVEADDGUI = 0x00010000, 
  37. SHCNE_DRIVEREMOVED = 0x00000080, 
  38. SHCNE_EXTENDED_EVENT = 0x04000000, 
  39. SHCNE_FREESPACE = 0x00040000, 
  40. SHCNE_MEDIAINSERTED = 0x00000020, 
  41. SHCNE_MEDIAREMOVED = 0x00000040, 
  42. SHCNE_MKDIR = 0x00000008, 
  43. SHCNE_NETSHARE = 0x00000200, 
  44. SHCNE_NETUNSHARE = 0x00000400, 
  45. SHCNE_RENAMEFOLDER = 0x00020000, 
  46. SHCNE_RENAMEITEM = 0x00000001, 
  47. SHCNE_RMDIR = 0x00000010, 
  48. SHCNE_SERVERDISCONNECT = 0x00004000, 
  49. SHCNE_UPDATEDIR = 0x00001000, 
  50. SHCNE_UPDATEIMAGE = 0x00008000, 
  51. #endregion 

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表