WdfIoQueueGetState

Hi.

I recently asked a question and I was pointed to the direction of a ManualQueue. I have been quite successful with the result. However I have one or two problems which remain.

When I use WdfIoQueueGetState, I have the number in the Queue return as QueueRequests rather than DriverRequests. In the below problem I am thoughtful that this might be the position of the error.

When I make a IOCTL, I have it return but several IOCTL’s seem to return when I look at the result of the user executable. (The first returns the correct ULONG data followed by one of 0x00000000 and 0x00000004.)

After so many requests I receive an error of 998.

I can be very limited on the information I can give you but I hope that this might be enough. I am a beginner and I hope I have just missed something I shouldn’t have.

Ahhh … the old “intellectual property” conundrum … how to ask a meaningful question without telling you what I am doing.

So what are the IOCTL’s you are sending and what IOCTL’s do you then see?

Gary G. Little

----- Original Message -----
From: xxxxx@hotmail.com
To: “Windows System Software Devs Interest List”
Sent: Wednesday, March 30, 2011 5:34:24 AM
Subject: [ntdev] WdfIoQueueGetState

Hi.

I recently asked a question and I was pointed to the direction of a ManualQueue. I have been quite successful with the result. However I have one or two problems which remain.

When I use WdfIoQueueGetState, I have the number in the Queue return as QueueRequests rather than DriverRequests. In the below problem I am thoughtful that this might be the position of the error.

When I make a IOCTL, I have it return but several IOCTL’s seem to return when I look at the result of the user executable. (The first returns the correct ULONG data followed by one of 0x00000000 and 0x00000004.)

After so many requests I receive an error of 998.

I can be very limited on the information I can give you but I hope that this might be enough. I am a beginner and I hope I have just missed something I shouldn’t have.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

If you want to inspect the queue’s state, run !wdfkd.wdfioqueue against the manual queue handle.

d

dent from a phine with no keynoard

-----Original Message-----
From: xxxxx@hotmail.com
Sent: Wednesday, March 30, 2011 3:31 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] WdfIoQueueGetState

Hi.

I recently asked a question and I was pointed to the direction of a ManualQueue. I have been quite successful with the result. However I have one or two problems which remain.

When I use WdfIoQueueGetState, I have the number in the Queue return as QueueRequests rather than DriverRequests. In the below problem I am thoughtful that this might be the position of the error.

When I make a IOCTL, I have it return but several IOCTL’s seem to return when I look at the result of the user executable. (The first returns the correct ULONG data followed by one of 0x00000000 and 0x00000004.)

After so many requests I receive an error of 998.

I can be very limited on the information I can give you but I hope that this might be enough. I am a beginner and I hope I have just missed something I shouldn’t have.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

The IOCTL’s are custom, a usermode application sends some to a driver, they are placed in a queue until an event occurs and then the Request is completed and the data returned to the application. The first to return returns the correct value, the two that return immediately afterwards are wrong and return the unexpected data (the first returns 0x00000000, the second returns 0x00000004)

After 20 Requests have been processed, the user application closes and any remaining requests are cancelled due to the application closing and the last error I receive is 998. Inside the driver when I use DbgPrint there appears to be nothing going on but…

Doron: I will do as you say.

Re: WdfIoQueueGetState
Ahhh … the old “intellectual property” conundrum … how to ask a meaningful question without telling you what I am doing. So what are the IOCTL’s you are sending and what IOCTL’s do you then see? Gary G. Little ----- Original Message ----- From: xxxxx@hotmail.com To: “Windows System Software Devs Interest List” Sent: Wednesday, March 30, 2011 5:34:24 AM Subject: [ntdev] WdfIoQueueGetState Hi. I recently asked a question and I was pointed to the direction of a ManualQueue. I have been quite successful with the result. However I have one or two problems which remain. When I use WdfIoQueueGetState, I have the number in the Queue return as QueueRequests rather than DriverRequests. In the below problem I am thoughtful that this might be the position of the error. When I make a IOCTL, I have it return but several IOCTL’s seem to return when I look at the result of the user executable. (The first returns the correct ULONG data followed by one of 0x00000000 and 0x00000004.) After so many requests I receive an error of 998. I can be very limited on the information I can give you but I hope that this might be enough. I am a beginner and I hope I have just missed something I shouldn’t have. — NTDEV is sponsored by OSR For our schedule of WDF, WDM, debugging and other seminars visit: http://www.osr.com/seminars To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer