-
文件修改监控
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循环。
{
- 2022-03-10 05:44:52下载
- 积分:1
-
控件(DBEditHz)开发的例子,可以参考此开发控件.希望对初学者有少少帮助!...
控件(DBEditHz)开发的例子,可以参考此开发控件.希望对初学者有少少帮助!-Controls (DBEditHz) developed examples can refer to this development controls. Hope to have some help for beginners!
- 2022-09-28 04:15:02下载
- 积分:1
-
这是一个 模拟的代码编辑器,对所有的vc 的 关键字 都有 着色功能...
这是一个 模拟的代码编辑器,对所有的vc 的 关键字 都有 着色功能-This is a simulation of the code editor for all of the vc keywords are coloring function
- 2022-03-05 00:08:04下载
- 积分:1
-
跳频扩频通信系统仿真
跳频扩频通信系统仿真-Frequency Hopping Spread Spectrum Communication System Simulation
- 2022-12-27 02:05:03下载
- 积分:1
-
批量改名,可以轻松帮你改文件名。
批量改名,可以轻松帮你改文件名。-renamed quantities, can easily help you to change file names.
- 2023-02-08 17:40:04下载
- 积分:1
-
Reflector 4.2.40 (C#) source code (a full
Reflector 4.2.40 (C#)源代码 (全功能版)
如题,有兴趣的下载,编译就可运行-Reflector 4.2.40 (C#) source code (a full-featured version), such as title, are interested to download, compile to run the
- 2022-03-06 18:31:03下载
- 积分:1
-
VB二维打飞机游戏
应用背景打飞机(Fighter)是一款有趣又益智的游戏。它可以培养游戏者的逻辑推理能力,适合各种年龄段的人玩。
该游戏原本是我读本科时在宿舍里和同学一起玩的。需要两人以上合作,互相布局互相“开炮”。非常好玩。这次,我把游戏改成计算机版本,(可选计算机自动布局和手动布局两种模式),可以单机玩,也可以由别人布局在由你玩。关键技术二维打飞机小游戏源代码,十分简单的游戏,a控制向左,d控制向右。w控制向前,s控制向后,鼠标点击发射子弹,每次打中会有相应的子弹报酬,最后子弹或者生命完了后游戏结束,
- 2022-02-20 05:06:07下载
- 积分:1
-
一个简单的端口访问实例――扬声器发生程序。由于Win2000及以上操作系统提高了对主板访问的安全性,所以此程序只能在Win98下编译运行。...
一个简单的端口访问实例――扬声器发生程序。由于Win2000及以上操作系统提高了对主板访问的安全性,所以此程序只能在Win98下编译运行。-a simple example of the port visit-- loudspeakers occurred procedures. Since Windows 2000 operating system and above board increased the security of the visit, this procedure can only build run under Win98.
- 2022-08-23 09:14:16下载
- 积分:1
-
石器时代客户端
资源描述石器时代客户端,经测试可编译,环境Window7 64位 + vs2012
- 2023-07-14 08:05:04下载
- 积分:1
-
很好的程序
很好的程序-Very good procedures
- 2022-03-22 17:12:36下载
- 积分:1