C#实现刷新桌面的方法

 更新时间:2015年09月17日 12:30:49   作者:我心依旧  
这篇文章主要介绍了C#实现刷新桌面的方法,涉及C#基于shell32.dll动态链接库实现系统桌面刷新的技巧,具有一定参考借鉴价值,需要的朋友可以参考下

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

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
namespace FileEncryptProject.Algorithm
{
  public class DesktopRefurbish
  {
    /// <summary>
    /// 桌面刷新
    /// </summary>
    [DllImport("shell32.dll")]
    public static extern void SHChangeNotify(HChangeNotifyEventID wEventId, HChangeNotifyFlags uFlags, IntPtr dwItem1, IntPtr dwItem2);
    public static void DeskRef()
    {
      SHChangeNotify(HChangeNotifyEventID.SHCNE_ASSOCCHANGED, HChangeNotifyFlags.SHCNF_IDLIST, IntPtr.Zero, IntPtr.Zero);
    }
  }
  #region public enum HChangeNotifyFlags
  [Flags]
  public enum HChangeNotifyFlags
  {
    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//enum HChangeNotifyFlags
  #region enum HChangeNotifyEventID
  [Flags]
  public enum HChangeNotifyEventID
  {
    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#程序设计有所帮助。

相关文章

  • C#文件操作、读取文件、Debug/Trace类用法

    C#文件操作、读取文件、Debug/Trace类用法

    这篇文章介绍了C#文件操作、读取文件、Debug/Trace类的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • 基于C#实现Windows服务的方法详解

    基于C#实现Windows服务的方法详解

    在实际应用过程中,有时候我们希望开发的程序,不需要界面,直接开机就可以长时间运行,这时候,我们可以考虑做成一个Windows服务。这篇文章跟大家介绍一下,如何基于C#实现Windows服务的创建、安装、启动、停止和卸载,需要的可以参考一下
    2022-09-09
  • C#实现扫雷游戏

    C#实现扫雷游戏

    这篇文章主要为大家详细介绍了C#实现扫雷游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • DirectInfo.GetFiles返回数组的默认排序示例

    DirectInfo.GetFiles返回数组的默认排序示例

    这篇文章主要介绍了,DirectInfo.GetFiles返回数组的默认排序示例NTFS和CDFS下,是按照字母顺序,而FAT下,按照文件创建时间顺序
    2014-01-01
  • C# ConfigHelper 辅助类介绍

    C# ConfigHelper 辅助类介绍

    ConfigHelper(包含AppConfig和WebConfig), app.config和web.config的[appSettings]和[connectionStrings]节点进行新增、修改、删除和读取相关的操作。
    2013-04-04
  • Winform在DataGridView中显示图片

    Winform在DataGridView中显示图片

    本文主要介绍在DataGridView如何显示图片,简单实用,需要的朋友可以参考下。
    2016-05-05
  • C#计算文件MD5校验的方法

    C#计算文件MD5校验的方法

    这篇文章主要介绍了C#计算文件MD5校验的方法,涉及C#针对文件进行md5校验的技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • C# 读取指定路径配置文件的方法

    C# 读取指定路径配置文件的方法

    为了实现多个C#程序共用一个config文件,需要程序读取指定路径的config文件。代码如下:
    2013-03-03
  • C# DateTime日期比较方法案例详解

    C# DateTime日期比较方法案例详解

    这篇文章主要介绍了C# DateTime日期比较方法案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • c#协变和逆变实例分析

    c#协变和逆变实例分析

    这篇文章主要介绍了c#协变和逆变,以实例形式详细讲述了协变和逆变的原理与具体用法,具有一定的学习借鉴价值,需要的朋友可以参考下
    2014-10-10

最新评论