2014년 10월 20일 월요일

CFile 클래스 동일 파일 열기

파일 한개를 여러 프로그램이 열어야 할 경우가 생겼다. 단순히 read mode로 열면 열릴줄 알았는데 에러가 났다. 아래처럼 해주어야 동일 파일을 여러 프로그램이 열수 있다. CFile file; file.Open(strTemp, CFile::modeRead||CFile::shareDenyNone, &ex) Msdn에는 아래처럼 설명하고 있다. CFile::shareDenyNone 공유 제한 사항이 없습니다. Api 함수 중 copyfile 이 있는데 이 함수는 파일이 먼저 열려있으면, 복사를 실패한다. 하지만 디버그 모드에서도 에러를 띄우지 않는다. 때문에 복사가 되는줄 알고 파일을 확인해보면 파일이 복사되지 않았다. BOOL WINAPI CopyFile( _In_ LPCTSTR lpExistingFileName, _In_ LPCTSTR lpNewFileName, _In_ BOOL bFailIfExists );

댓글 없음:

댓글 쓰기