比较简单的实现办法,是使用第三方控件,比如 TRxFolderMonitor、CnPack 组件包中的TCnFileSystemWatcher 等。
usesShellAPI
ShellExecute(Handle,'open','Explorer.exe','C:\Windows',nil,1)
这样可以打开C:\Windows,如果需要其它目录的话,可以自己设置一下就行了。
你需要先进行监视。SHNotify_Register(self.Handle)//注册Shell监视procedure TForm1.WMShellReg(var Message: TMessage)
var
strPath1, strPath2: string
charPath: array[0..259] of char
pidlItem: PSHNOTIFYSTRUCT
begin
pidlItem := PSHNOTIFYSTRUCT(Message.wParam)
//获得系统消息相关得路径
SHGetPathFromIDList(pidlItem.dwItem1, charPath)
strPath1 := charPath
SHGetPathFromIDList(pidlItem.dwItem2, charPath)
strPath2 := charPath
Memo1.Lines.Add(SHEvEntName(strPath1, strPath2, Message.lParam) + chr(13) + chr(10))
end
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)