2017-11-18 1 views
0

변경 내용을 파일로 추적하고 작업 전 콜백에서 작업 후 콜백으로 일부 정보를 전달하고 전달하려고합니다.미니 필터 드라이버 | 사전 작업에서 사후 작업으로 정보를 전달합니다.

가장 좋은 방법은 무엇입니까?

[편집 : 드라이버는 다른 윈도우 10 모든 것 보너스를 지원해야] 당신은 단순히 당신이 수술후에 전달하려는 데이터에 대한 포인터를 저장하기 위해 술 전에서 CompletionContext을 PVOID를 사용 * 수

+0

당신은 당신의 드라이버를 할 것인가? – lospejos

+0

추가 정보를 위해 질문을 수정했습니다. –

+0

Windows의 경우 WDK (Windows 드라이버 개발 키트)가 있으며 무료로 제공되는지 확실하지 않습니다 (많은 MS 제품이 그렇지 않습니다). 여기에는 파일 시스템 필터 드라이버 인 IMHO – lospejos

답변

0

. PostOperation에서 Preoperation에서 지적한 데이터이므로 CompletionContext을 사용하면됩니다. 예를 들어

: PreOp :

MyPreOpData = ExAllocatePoolWithTag(DATA_SIZE); 
FltGetFileNameInformation(&NameInfo); 
MyPreData->NameInfo = NameInfo; 
MyPreData->OtherData = MyDrvGetOtherData(Params); 
*CompletionContext = MyPreData; 

수술 후 :

if (CompletionContext != NULL) 
{ 
    PMY_DATA MyPreData = (PMY_DATA)CompletionContext; 
    // now continue using the data queried in the PreOp 
    ... 
    // when done free it 
    ExFreePoolWithTag(MyPreData); 
} 

은 자세한 내용은 here를 참조하십시오.

행운을 빌어 요,
가브리엘 어떤 OS를 들어

관련 문제