서버 프로그램에서 쓰는 텍스트 파일을 모니터링하고 있습니다. 파일이 변경 될 때마다 콘텐츠가 내 프로그램의 창에 출력됩니다.다른 프로세스에서 사용하는 파일 읽기
used by another process
이므로 파일에 Streamreader
을 사용할 수 없다는 것이 문제입니다. Filestream
을 ReadWrite
으로 설정하면 파일을 사용하는 프로세스를 제어 할 수 없으므로 아무런 효과가 없습니다.
메모장에서 파일을 열 수 있습니다. 서버가 사용 중이더라도 액세스 할 수 있어야합니다.
좋은 방법이 있습니까?
다음을 수행해야합니까?
- 는
- 이 임시 복사본을 삭제 임시 사본
- 읽기가 변경 될 때 그것의 임시 복사본을 만듭니다 파일
- 를 모니터링합니다.
서버가 파일을 변경할 때마다 파일에서 텍스트를 가져와야합니다.
고마워 ... 나는이 경우 FileShare.Read가 올바르지 않다는 것을 몰랐다. –
'FileShare.ReadWrite | FileShare.Delete'를 사용하면 더 많은 수의 파일에 액세스 할 수 있습니다. 'FileShare.ReadWrite'가 충분하지 않을 때 시도 할 가치가 있습니다. – Adassko
@Adassko 또는'FileShare.Read'가 충분하지 않은 경우 (이 경우와 같은 경우), 동일한 상황에서 필자가 동일한 종류의 코드에서 사용하고 있습니다. 그것을 작동 시키려면'FileShare.ReadWrite'로 전환해야했습니다. – vapcguy