2010-03-24 4 views
2

많은 파일이 포함 된 디렉토리를 모니터링해야하며 디렉토리에서 .txt 파일을 읽고 삭제합니다. 모든 .txt 파일이 소비되면 소비 프로세스가 종료되어야합니다. 모든 .txt 파일이 C++을 사용하여 소비되는지 어떻게 확인합니까? Windows 플랫폼의 Visual Studio에서 내 응용 프로그램을 개발 중입니다.C++에서 파일 디렉토리를 모니터하는 방법은 무엇입니까?

+0

"소비"는 무엇을 의미합니까? 파일을 읽는 프로세스를 감지 할 수 없습니다. –

+1

Consumed는 처리되고 삭제됨을 의미합니다. – sand

+1

더 이상 사용할 파일이 없으면 소비 프로세스가 종료되지 않는 이유는 무엇입니까? – Bill

답변

0

각 txt 파일 삭제시 작업을 수행 할 필요가 없으므로 나는 다음과 같은 코드를 생각해 냈다 :

{ 
    intptr_t hFile; 
    struct _finddata_t c_file; 
    string searchSpec; 
    for (size_t i = 0; i < dataPathVec.size(); ++i) 
    { 
    searchSpec = dataPathVec.at(i) + DIRECTORY_SEPERATOR + "*" + TXT_FILE_EXT; 
    hFile = 0; 
    while((hFile != -1L) || (ret != 0)) 
    { 
     hFile = _findfirst(searchSpec.c_str(), &c_file); 
     Sleep(500); 
     if (hFile != -1L) 
     { 
      ret = _findclose(hFile); 
     } 
    } 
    } 
} 

많은 폴더를 모니터링하고 모든 txt 파일이 모니터되는 모든 폴더에서 삭제 될 때까지 기다릴 수있다.

관련 문제