用什么API可以取得各个进程占用的磁盘文件的信息?
梦想家起飞 2006-11-03 09:50:41 如题,OS是XP,想用C#做。
.Net Framework提供了一个FileSystemWatcher,
但是只能知道哪个文件被访问或者改变了,
而不能找出到底是哪个进程干的好事。
MSDN了一把WMI提供的API,也没有发现能达到目的的东西。
看来只能直接使用WIN32 API?目前有两种想法:
1.往文件系统管理者注册事件,像FileSystemWatcher
那样监听文件系统事件,只是需要同时取得进程以及其下的线程信息。
2.遍历所有或指定的进程,收集它们各自占用的文件句柄,
进而得出文件路径和名称。
但是,我不知道应该使用什么API。。。