SHChangeNotify

来源:互联网 发布:游戏策划 美工 强奸 编辑:程序博客网 时间:2024/06/03 18:16

SHChangeNotify(
  LONG wEventID, //指定事件类型
  UINT uFlags,  //确定dwItem1和dwItem2作的标志
  LPCVOID dwItem1,
  LPCVOID dwItem2
);
1.wEventId的取值如下:
SHCNE_ASSOCCHANGED:修改文件关联
SHCNE_ATTRIBUTES:改变文件属性
SHCNE_CREATE:创建新文件
SHCNE_DELETE:删除文件
SHCNE_DRIVEADD:增加网络驱动器
SHCNE_DRIVEADDGUI:通过GUI增加网络驱动器
SHCNE_DRIVEREMOVED:卸载网络驱动器
SHCNE_INTERRUPT:将事件作为系统中断执行。
SHCNE_MEDIAINSERTED:安装可卸载媒体,如CD-ROM
SHCNE_MEDIAREMOVED:卸载可卸载媒体,如CD-ROM
SHCNE_MKDIR:新建目录
SHCNE_NETSHARE:网络上共享资源
SHCNE_NETUNSHARE:网络上停止共享资源
SHCNE_RENAMEFOLDER:文件夹改名
SHCNE_RENAMEITEM:文件夹中某项改名
SHCNE_RMDIR:删除目录
SHCNE_SERVERDISCONNECT:与网络服务器断开链接
SHCNE_UPDATEDIR:更新目录信息
SHCNE_UPDATEIMAGE:改变系统全局图像列表中的一个图像
SHCNE_UPDATEITEM:改变打印机或文件的列表
3.该函数没有返回值。
2.uFlags的取值如下:
SHCNF_DWORD: dwItem1和dwItem2是DWORD类型值。
SHCNF_FLUSH:清空系统事件缓冲区,系统处理完给定的事件后才返回
SHCNF_FLUSHNOWAIT:清空系统事件缓冲区,立即返回
SHCNF_IDLIST:dwItem1和dwItem2为项目标识符列表的地址
SHCNF_PATH:dwItem1和dwItem2为路径地址
SHCNF_PRINTER:dwItem1和dwItem2为友好打印机名

SHChangeNotify( SHCNE_Delete, SHCNF_PATH | SHCNF_FLUSHNOWAIT, TEXT

("C:\\WINDOWS"), NULL );稍为修改成为delphi代码:

uses

ShlObj;

SHChangeNotify( SHCNE_Delete, SHCNF_PATH or SHCNF_FLUSHNOWAIT, pchar('C:\\WINDOWS'),{转换一下} nil );



uses
  ShlObj;
procedure TForm1.Button1Click(Sender: TObject);
begin
  SHChangeNotify(SHCNE_ASSOCCHANGED,
    SHCNF_IDLIST,
    nil,
    nil); //刷新
end;

原创粉丝点击