什么意思,你是想说监控某个目录是否文件个数,名称,属性等发生了变化了吗?
如果是这个问题,可以到我的主页上面找一个控件下载。
主页:http://smallroom.126.com
下载控件:http://smallroom.easthome.net/download/discmon.zip

解决方案 »

  1.   

    我有一个笨办法不知是否合你意,
    可以考虑不断获得磁盘空余字节数,然后进行比较得到是否文件增加了。如果你想真正对增加了什么文件之类的信息做到掌握,我现在还对此没有具体的想法,可能会用到ISHELL接口吧,你可以看一下有关ISHELL的帮助。
      

  2.   

    试一试这几个API:
        FindFirstChangeNotification( );
      FindNextChangeNotification( );
      WaitForSingleObject( ); 
      其中FindFirstChangeNotification(lpzpath,fwatchsubtree,fdwfilter)
    中的lpzpath表示要监视的路径名,fwatchsubtree判断是否查看子目录,
    fdwfilter为要监视的事件,函数执行成功后返回一个句柄。 
      参数fdwfilter取值及其含义如下:
      FILE_NOTIFY_CHANGE_FILE_NAME
      查看指定目录下任何文件名的改变
      FILE_NOTIFY_CHANGE_DIR_NAME
      查看指定目录下任何目录名的改变
      FILE_NOTIFY_CHANGE_SIZE
      查看指定目录下文件大小的改变
      FILE_NOTIFY_CHANGE_ATTRIBUTES
      查看指定目录下文件属性的改变
      FindNextChangeNotification(hchange),hchan
      ge为FindFirstChangenNotification返回的句柄,其作用是请求系统
    在下次检测到相应改变时发出改变通知消息句柄。当函数成功返回后,应
    用程序可通过WaitForMultipleObjects或WaitfForSingleObject来等待发
    生改变的通知。WaitForSingleObject(hchange,dwmilliseconds)中
    hchange为FindFirstChangeNotification 返回的句柄,dwmilliseconds
    为等待时间值,指定等待完成需要的时间,单位为毫秒。该值为-1时表
    示时间无限长。最好在结束监视程序之前先用FindCloseChangeNotification(hchange)
    来关闭句柄。