#include #include void MonitorDirectory(LPCWSTR path) { HANDLE hDir = CreateFile(path, FILE_LIST_DIRECTORY, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, NULL, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, NULL); if (hDir == INVALID_HANDLE_VALUE) { printf("Failed to open directory: %d\n", GetLastError()); return; } CHAR lpBuffer[1024]; DWORD nBufferLength = 1024; DWORD dwBytesReturned; while (1) { BOOL result = ReadDirectoryChangesW(hDir, &lpBuffer, nBufferLength, FALSE, FILE_NOTIFY_CHANGE_LAST_WRITE, &dwBytesReturned, NULL, NULL); if (!result) { printf("ReadDirectoryChangesW failed: %d\n", GetLastError()); break; } printf("File or directory in %S was modified.\n", path); } CloseHandle(hDir); } int main() { LPCWSTR path = L"C:\\Users\\SEEDAGX\\source\\repos\\WatcherChange\\WatcherChange"; // 監視するフォルダのパスを指定 MonitorDirectory(path); return 0; }