2009-08-31 8 views
1

디렉토리의 모든 파일을 복사해야하는 일종의 백업 도구를 작성하고 있습니다. 이제 C#의 File.Copy(String, String, Boolean) 메서드를 사용하고 있습니다. 하지만 다른 응용 프로그램 (변경할 수없는 응용 프로그램)은 해당 디렉토리의 파일에 동시에 씁니다.File.Copy로 변경 파일 복사

그래서 지금은 파일이 복사 프로세스가 손상된 백업 파일을 만드는 중반 변경 될 수 있는지 궁금해?

감사합니다.

답변

3

아니요, 아닙니다. 기본 파일 시스템은 이것이 일어나지 않는지 확인합니다.

+0

누구든지 온라인 소스를 확인하고 이에 대해 더 자세히 설명합니까? 나는 그 자신을 google하려고 노력했다. 그러나 나는보기 흉하지 않은 무엇이라도 발견 할 수 없었다. –

+1

설명 된 문제가 실제로 발생합니까? 보기 흉한 설명 : http://en.wikipedia.org/wiki/File_locking#In_Microsoft_Windows 파일을 어떻게 열 었는지에 따라 달라집니다. 나는 FileInfo.CopyTo가 당신보다 잘 작동 할 것이라고 확신한다. – Rashack

+0

아니요, 설명 된 문제가 발생하지 않았습니다. 그러나 백업 도구는 프로덕션 환경에서 매우 집중적으로 사용되므로 매우주의해야합니다. 다른 응용 프로그램이 내가 백업하는 파일을 어떻게 열지에 대한 제어권이 없습니다. 그리고 File.Copy 메서드는 다른 응용 프로그램이 파일에 쓰기 잠금을 가지고 있지만 읽기 잠금이 아닌 경우에도 작동한다는 것을 알았습니다. 따라서 파일의 복사본이 중간에 변경되어 파일이 손상 될 수 있다고 생각했습니다. 이 일이 일어날 수 없다는 소식통을 찾으면 나는 더 편할 것이다. –