C#实现刷新桌面的方法
本文实例讲述了C#实现刷新桌面的方法。分享给大家供大家参考。具体如下:
usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingSystem.Runtime.InteropServices; namespaceFileEncryptProject.Algorithm { publicclassDesktopRefurbish { ///<summary> ///桌面刷新 ///</summary> [DllImport("shell32.dll")] publicstaticexternvoidSHChangeNotify(HChangeNotifyEventIDwEventId,HChangeNotifyFlagsuFlags,IntPtrdwItem1,IntPtrdwItem2); publicstaticvoidDeskRef() { SHChangeNotify(HChangeNotifyEventID.SHCNE_ASSOCCHANGED,HChangeNotifyFlags.SHCNF_IDLIST,IntPtr.Zero,IntPtr.Zero); } } #regionpublicenumHChangeNotifyFlags [Flags] publicenumHChangeNotifyFlags { SHCNF_DWORD=0x0003, SHCNF_IDLIST=0x0000, SHCNF_PATHA=0x0001, SHCNF_PATHW=0x0005, SHCNF_PRINTERA=0x0002, SHCNF_PRINTERW=0x0006, SHCNF_FLUSH=0x1000, SHCNF_FLUSHNOWAIT=0x2000 } #endregion//enumHChangeNotifyFlags #regionenumHChangeNotifyEventID [Flags] publicenumHChangeNotifyEventID { SHCNE_ALLEVENTS=0x7FFFFFFF, SHCNE_ASSOCCHANGED=0x08000000, SHCNE_ATTRIBUTES=0x00000800, SHCNE_CREATE=0x00000002, SHCNE_DELETE=0x00000004, SHCNE_DRIVEADD=0x00000100, SHCNE_DRIVEADDGUI=0x00010000, SHCNE_DRIVEREMOVED=0x00000080, SHCNE_EXTENDED_EVENT=0x04000000, SHCNE_FREESPACE=0x00040000, SHCNE_MEDIAINSERTED=0x00000020, SHCNE_MEDIAREMOVED=0x00000040, SHCNE_MKDIR=0x00000008, SHCNE_NETSHARE=0x00000200, SHCNE_NETUNSHARE=0x00000400, SHCNE_RENAMEFOLDER=0x00020000, SHCNE_RENAMEITEM=0x00000001, SHCNE_RMDIR=0x00000010, SHCNE_SERVERDISCONNECT=0x00004000, SHCNE_UPDATEDIR=0x00001000, SHCNE_UPDATEIMAGE=0x00008000, } #endregion }
希望本文所述对大家的C#程序设计有所帮助。