windows - How to properly register a completion routine for an internal device control request for a lower filter disk driver? -
i'm writing lower filter disk driver capture scsi commands, , measure performance of each command. currently, driver capable of capturing scsi request, , passing down next driver. however, when tried register completion routine, following status: 0xc0000010(status_invalid_device_request).
working code without completion routine:
wdf_request_send_options_init(&options, wdf_request_send_option_send_and_forget); wdfrequestsend(request, target, &options);
failing code completion routine:
wdfrequestformatrequestusingcurrenttype(request); wdfrequestsetcompletionroutine(request, completionroutine, completioncontext); wdfrequestsend(request, target, wdf_no_send_options);
any appreciated. thanks.
notes:
- wdfrequestsend() failing routine.
- the code completion routine works, upper filter disk driver.
as per discussion on ntdev, turns out if completionroutine
null
, must use wdf_request_send_option_send_and_forget
option.
Comments
Post a Comment