实时监控上机者是否在一个指定的目录下创建或删除一个文件
编号:QA002159
建立日期: 1999年12月3日 最后修改日期:2001年2月13日
所属类别:
wuchunlong:
操作系统: win9x,winnt
编程工具: vb
问题: 我想设计一个程序实时监控上机者是否在一个指定的目录下创建或删除一个文件,并提出警告,或直接取消他的操作。请告许我如何做,或是否有这样的API函数,谢谢!
回答:
李海的意见:
用VB干不了这件事,应该使用C++和DDK(或VToolsD、DriverWorks)编写虚拟设备驱动,利用系统的IFSHook服务来监视这些工作。系统在执行每个文件操作前都会调用IFSHook服务程序。CIH就是利用这个原理实现病毒传播的。在http://www.codeguru.com/system/spy_fileio.shtml可以找到Win9x的例子,而在http://www.sysinternals.com/提供了一个NTFilemon程序(含源程序)也是干这种工作的。当然如果要用VB来干这事,只能定时访问目录,看用户都干什么了,不过不是实时监控。
这个有一个免费控件
FileMonitor.zip,可以监视文件操作,主页在http://www.braem17.yucom.be。
point的意见:
我认为这个问题可以解决,即调用API函数-FindFirstChangeNotification 、FindCloseChangeNotification、FindNextChangeNotification 和WaitForSingleObject 。示例
watchdir.zip。
此问题由李海等回答。
| |
|
|
| |
|
|