Hi,
I am writing WUSB driver. I have defined one structure that shares data
between user mode and kernel mode. I pass structure pointer from user mode
to kernel mode thru IOCTL. I do some processing in kernel mode such that
structure pointer sent from user mode get modified. I need to retain
structure pointer value in both mode. Now i am not able to retain the value.
I am getting error code as 0x000003E6 i.e. “Invalid access to memory
location.” in user mode.
I am using WdfRequestSetInfomrmation() to set changed object value
code snippet is as follows-
//
// Set the completion status information.
//
WdfRequestSetInformation(
wdfRequest,
(ULONG_PTR)&pStructPtr //
structure pointer retrieved using WdfRequestRetrieveInputBuffer
);
//
// Complete the request with information.
//
WdfRequestComplete(
wdfRequest,
ntStatus
);
Please suggest me.
Thanks in advance,
Shalaka