ect; var Action: TCloseAction); begin file://在程序退出的同时删除监视 if Boolean(m_pidlDesktop) then SHNotify_Unregister; end;
procedure TForm1.Button1Click(Sender: TObject); file://Button1的Click消息 begin m_hSHNotify:=0; if SHNotify_Register(Form1.Handle) then begin file://注册Shell监视 ShowMessage(''''Shell监视程序成功注册''''); Button1.Enabled := False; end else ShowMessage(''''Shell监视程序注册失败''''); end;
procedure TForm1.FormCreate(Sender: TObject); begin Button1.Caption := ''''打开监视''''; end;
end.
运行程序,点击“打开监视”按钮,如果出现一个显示“Shell监视程序成功注册”的对话框,说明Form1已经加入到系统操作监视链中了, 你可以试着在资源管理器中建立、删除文件夹,移动文件等操作,你可以发现这些操作都被纪录下来并显示在文本框中。 在上面的程序中多次使用到了一个PItemIDList的结构,这个数据结构指定Windows下得一个“项目”,在Windows下资源实现统一管理 一个“项目”可以是一个文件或者一个文件夹,也可以是一个打印机等资源。另外一些API函数也涉及到了Shell(Windows外壳)操作,各位 读者可以参考相应的参考资料。
上一页 [1] [2] |