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

Popular posts from this blog

PHP DOM loadHTML() method unusual warning -

python - How to create jsonb index using GIN on SQLAlchemy? -

c# - TransactionScope not rolling back although no complete() is called -