#include "stdafx.h"
#include <Windows.h>
int _tmain(int argc, _TCHAR* argv[])
{
HANDLE
hEvent;//监控句柄
char* path[MAX_PATH+1] ;//监控目录
GetCurrentDirectory(MAX_PATH,(LPWSTR)path);
hEvent =
FindFirstChangeNotification((LPCWSTR)path,TRUE,FILE_NOTIFY_CHANGE_FILE_NAME|
//查看指定目录下任何文件名的改变
FILE_NOTIFY_CHANGE_DIR_NAME|
//查看指定目录下任何目录名的改变
FILE_NOTIFY_CHANGE_SIZE|
//查看指定文件大小的改变
FILE_NOTIFY_CHANGE_ATTRIBUTES);//查看指定目录下文件属性的改变
if (hEvent
== INVALID_HANDLE_VALUE)
{
ExitProcess(GetLastError());//获取错误
return 0 ;
}
while
(TRUE)//循环监控
{
DWORD nobj;
nobj=
WaitForSingleObject(hEvent,INFINITE);//等待,文件夹任何动作,都返回0,顾不能知道具体动作和具体哪个文件发生了变化
if (nobj)
{
;
}
printf("文件发生了变化\r\n");
//继续监控
if(FALSE==FindNextChangeNotification(hEvent))
{
ExitProcess(GetLastError());
return 0;
}
}
return 0;
}
加载中,请稍候......