Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2352726
  • 博文数量: 816
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-17 17:57
文章分类

全部博文(816)

文章存档

2011年(1)

2008年(815)

分类:

2008-12-17 18:05:33

我想了一下,因为监视文件内容变化比较复杂,但是如果文件内容变化(不包括文件名的变化),那么修改的时间一定会变化,那么我们就监视文件的修改时间是否变化就可以了应该。
我用控制台写了一个,你可以参考一下,就用这个FindFirstChangeNotification就可以了,当然实际编写的时候你应该单独为这个监视的过程开一个线程(如果你的程序还要完成其它的东西)。
int main(int argc, char* argv[])
{
    DWORD dwWaitStatus ;
    HANDLE dwChangeHandle ;   //返回通知的句柄
    while (true)
    {
        dwChangeHandle = FindFirstChangeNotification("C:\\PWIN98", true, FILE_NOTIFY_CHANGE_LAST_WRITE);   //设置返回通知的句柄
        if(dwChangeHandle == INVALID_HANDLE_VALUE)
            exit (GetLastError());
        dwWaitStatus=WaitForSingleObject(dwChangeHandle, INFINITE);   //通知返回
        if (dwWaitStatus == WAIT_OBJECT_0)
            //把复制文件的程序写在这里,CopyFile(……) ;
    }
}

--------------------next---------------------

阅读(964) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~