2012-10-09 3 views
40

는 :사용은 FileSystemWatcher는

The directory name C:\Cromos 3.0\repository\diagnostics\dwm01_2011_06_13__09_03.LXD is invalid. 

당신 만 설정할 수 있습니다

watcher.Path = filePath1; 

을 나는 오류 폴더 디렉토리의 경로?

+0

watcher.Filter가 필요한 것을 수행합니다. – Jay

+0

@Charleh, FileSystemWatcher도 변경된 이벤트를 제공하므로 특정 파일이 언제 변경되는지 알고 싶을 수 있으므로 동의하겠습니다. –

+1

그건 사실이야. 내가 사용한 이후로 꽤 오랜 시간이 지났어. - 많은 변경/파일들이 추가/제거되었을 때, 때로는 신뢰할 수 없다는 것을 읽었을거야. – Charleh

답변

79

귀하의 오류가

watcher.Path = Path.GetDirectoryName(filePath1); 
watcher.Filter = Path.GetFileName(filePath1); 

작동합니다 전체 파일 이름과 경로 속성을 설정합니다.

+1

은 의미가 있지만 파일 내용을 변경하면 'OnChanged'이벤트가 호출되지 않습니다. 내 파일 시스템 워처가 'Form1'이 아닌 클래스 안에있는 것이 문제입니까? – Jimmy

+0

해당 클래스의 인스턴스를 실행해야합니다. 그렇지 않으면 파일 워처가 없습니다. –

+19

해결 됨! 나는 잊었을거야 : 'watcher.EnableRaisingEvents = 사실;' – Jimmy

5

예. 필터 속성을 파일 이름으로 설정하여 특정 파일을 볼 수 있습니다.

watcher.Filter = "dwm01_2011_06_13__09_03.LXD"; 
+0

고마워! 여러 개의 단일 페이지를보고 싶다면이 방법이 효과가 있는지 아십니까? 즉, My filesystemwatcher는 'Page'클래스 안에 있습니다. 클래스의 여러 인스턴스 = 여러 개의 단일 페이지가 감시되고 있습니까? – Jimmy

+0

예, 왜 안 보이지 않습니다. –

+0

아마, 정적 인 경우. Page 객체는 응답을 끝내면 언로드됩니다. –