2013-11-04 3 views
0

안녕하세요 저는 서버에 C# Windows 서비스가 설치되어 있습니다.네트워크 폴더에서 파일을 만들 때를 알아야하는 방법

반면에 서비스는 네트워크 폴더에서 파일을 읽는 타이머를 시작합니다.

내 고객은 네트워크 폴더에 고정 길이 파일을 만든 다음 파일에 처리 할 프로세스가 있고 성공할 경우 파일이 삭제되지만 오류가 발생하면 동일한 파일 확장자 .err가 생성됩니다.

파일이 생성 될 때마다 이벤트를 트리거 할 수있는 Windows API가 있다는 것을 알고 있습니다.이 폴더는 서비스가 실행중인 서버와 동일하지 않습니다.

그럴 수 있습니까? 폴더를 서버에 매핑하면 트릭을 수행 할 수 있습니까?

+1

왜 사용해 보지 않으시겠습니까? –

+0

Windows API를 사용하는 대신 .NET Framework를 통해 사용할 수있는'FileSystemWatcher'를 사용하는 것이 좋습니다. –

+0

API를 말할 때 파일 시스템 워처에 대해 이야기하고 있다고 가정합니다. UNC 경로에서 실행해야합니다. 이 게시물을보십시오 http://stackoverflow.com/questions/960318/filesystemwatcher-fails-to-access-network-drive – Bearcat9425

답변

0

.NET의 FileSystemWatcher 클래스는 적절한 Windows 변경 알림 API를 사용하고 SMB 2.0 protocol은 Windows 변경 알림 API를 통해 전달되는 변경 알림을 지원합니다.

따라서 원격 서버가 SMB 2.0 (Windows Server 2008 이상, Samba 3을 실행하는 UNIX 호스트)을 지원하는 경우 FileSystemWatcher 클래스가 트릭을 수행해야합니다.

관련 문제