2014-12-04 1 views
0

나는 영어를 잘 모른다. Plz 날 이해해. :)미니 파일 드라이버에서 CREATION 작업을 파일로 잡을 수 있습니까?

파일 시스템 미니 필터 드라이버에서 파일 만들기 작업의 파일 경로를 리디렉션하고 싶습니다. 그래서 minifilter 드라이버를 사용하기로 결정했습니다. MSDN의 simrep sample project을 고려했습니다. 그러나 그것은 단지 재 파싱 경로처럼 보이고 있습니다. C : \ aaa \ abc.txt에 파일을 저장하면 파일이 C : \ bbb \ abc.txt에 저장됩니다. 그냥 방향을 바꾸세요! 그리고 드라이버는 분리되고 언로드되지만 abc.txt 파일은 C : \ bbb \ abc.txt에 있습니다.

그런 다음 IRP_MJ_CREATE를 처리하는 콜백 루틴에서 CAREATION 연산 만 catch하려고합니다. IRP_MJ_CREATE의 콜백 루틴이 파일, 장치 등을 생성 할 때 열뿐만 아니라 호출됨을 알고 있습니다. 어떻게하면됩니까?

답변

0

새 파일 작성을 의미하는 경우 사전 작성에서 다음 작성 처리를 확인할 수 있습니다. 작성중인 새 파일이있을 때

FILE_SUPERSEDED FILE_CREATE FILE_OVERWRITE FILE_OVERWRITE_IF

이 모든 처분이 발생합니다.

+0

예, FILE_SUPERSEDED는 항상 새 파일을 만들기 때문에 작성 처리가 FILE_SUPERSEDED 인 경우 적합합니다. 그러나 FILE_CREATE의 경우 파일이없는 경우에만 새 파일이 작성됩니다. Windows의 NotePad.exe를 사용하여 파일을 저장하여 테스트했습니다. 그런 다음 CreateDisposition 값이 1 ~ 3으로 표시되었습니다. 이는 FILE_CREATE, FILE_OPEN, FILE_OPEN_IF를 의미합니다. 그러나 거의 FILE_CREATE였습니다. :( 파일 열기 작업을 포착하고 싶지 않습니다. – strawnut

관련 문제