登录
首页 » Windows开发 » 文件修改监控

文件修改监控

于 2022-03-10 发布 文件大小:1.08 kB
0 259
下载积分: 2 下载次数: 1

代码说明:

ReadDirectoryChangesW 有同步和异步2种方式, 根据前面打开的文件夹对象句柄决定。  1. 异步方式,如果 CreateFile 指定了打开类型 FILE_FLAG_OVERLAPPED 就是异步方式,ReadDirectoryChangesW 调用的时候就需要指定 OVERLAPPED 参数.  接下来对文件夹I/O变化的响应判断有多种方式。  A通过不断的调用HasOverlappedIoCompleted函数(非阻塞,参数就是前面的OVERLAPPED 对象指针)的返回值来判断是否发生了 关注文件句柄的I/O操作。如果发生变化,再执行你的 switch(Buffer[0].Action) 操作过程。  B GetOverlappedResult 读取 OVERLAPPED 对象的结果。(阻塞)  C 完成端口 GetQueuedCompletionStatus (阻塞)。  其中阻塞方式,必须采用多线程的方式,否则你的主线程被阻塞的话,对话框就动不了了。非阻塞方式也可用多线程,结合hEvent对象来使用。  2.同步方式,如果CreateFile不指定FILE_FLAG_OVERLAPPED ,就是同步方式。  同步方式操作比较简单。lz的程序看来就是使用的同步方式。  在同步下,ReadDirectoryChangesW 将被阻塞,直到一个文件夹句柄的I/O操作到来,然后才能判断。所以lz的程序会死掉。  同步方式必须采用多线程,再创建一个线程,线程函数采用如下方式:  UINT ThreadProc(PVOID)  {     CreateFile();     while(1) // 如果只想监视一次文件的I/O变化,可不用while循环。     {   

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • Paypal 的 Yeshwanth
    Paypal 系统是如何工作的项目。基于控制台的项目与 java 的基础知识。 PayPal 是一个基于 Web 的应用的安全传输的成员帐户之间的资金。它没有任何加入 PayPal 或寄钱通过服务,成本用户,但在那些希望收到钱成员的地方费用结构。PayPal 依赖于使用由金融机构和信用卡公司的现有基础结构,并使用先进的欺诈预防技术提高交易的安全性。 麦克斯莱佛青和彼得泰尔 PayPal 成立于 1998 年。莱佛青和泰尔希望让在线购物更吸引消费者通过创建安全的支付系统,将作为易于使用作为考虑你钱包里的钱。若要发送通过 PayPal 的钱,你只需输入收件人的电子邮件地址和您要发送他们的金额。 到 2003 年中旬,贝宝的总部设在加州山景办事处被管理在世界各地的 38 个国家超过 3000 万帐户。EBay,最受欢迎的基于 Web 的拍卖企业,在 2002 年 10 月收购 PayPal。
    2022-02-04 01:58:04下载
    积分:1
  • VB 精选文摘集合
    VB 精选文摘集合 - 系统篇-Featured abstracts VB Collection- System Part
    2022-05-22 03:57:33下载
    积分:1
  • Windows Mobile 5.0 三十几个经典手机软件开发源码希望对大家有帮助....
    Windows Mobile 5.0 三十几个经典手机软件开发源码希望对大家有帮助.-Windows Mobile 5.0 30 phone several classic source software development we hope to have help.
    2023-02-08 02:55:03下载
    积分:1
  • mfc虚拟示波器
    用mfc编写的示波器动态显示的程序,提供源代码。同一界面具有四个示波器界面。用MFC编写示波器,能实现数字示波器的各个功能-Written with MFC oscilloscope, digital oscilloscope to achieve the various functions
    2022-07-26 17:45:28下载
    积分:1
  • 在VC中使用Borland BDE的数据
    在VC中使用Borland BDE的数据-in VC use Borland BDE data
    2022-01-25 17:38:23下载
    积分:1
  • 对WinCVS 2.0.2源代码。这是CVS的Windows客户端。你可以下载它…
    WinCvs2_0_2的源代码,windows版的CVS客户端,能够编译-source code for WinCvs 2.0.2. It is the CVS windows client. you can download it and complible it directly.
    2022-09-07 19:15:03下载
    积分:1
  • 很好,山东快书对话框很好的丹佛快乐分 了数量可能地赛后ij龙卷风让开咯暮四朝三敬爱对方...
    很好,山东快书对话框很好的丹佛快乐分 了数量可能地赛后ij龙卷风让开咯暮四朝三敬爱对方-Great
    2022-12-10 11:30:03下载
    积分:1
  • The design of asynchronous fifo, Asynchronous fifo design, can be a good compl...
    2022-01-27 17:51:55下载
    积分:1
  • 另一款EAN13条形码生成控件,用户可以很方便地在开发过程中使用,提供了原代码方便用户进行修改....
    另一款EAN13条形码生成控件,用户可以很方便地在开发过程中使用,提供了原代码方便用户进行修改.-EAN13 barcode generating another control, the user can easily use in the development process, provides a user-friendly source code be modified.
    2022-09-15 20:20:03下载
    积分:1
  • 很好的多线程例子。这个例子实现了线程池和工作消费模式
    很好的多线程例子。这个例子实现了线程池和工作消费模式-JobQ.dsp This file (the project file) contains information at the project level and is used to build a single project or subproject. Other users can share the project (.dsp) file, but they should export the makefiles locally. JobQ.h This is the main header file for the application. It includes other project specific headers (including Resource.h) and declares the CJobQApp application class. JobQ.cpp This is the main application source file that contains the application class CJobQApp. JobQ.rc This is a listing of all of the Microsoft Windows resources that the program uses. It includes the icons, bitmaps, and cursors that are stored in the RES subdirectory. This file can be directly edited in Microsoft Visual C++. JobQ.clw This file contains information used by ClassWizard to edit existing classes or add new classes. ClassWizard also uses this file to stor
    2022-02-24 15:16:57下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载