Hi,
I am using the 3rd party device driver (.sys file) and using window embedded standard 7 os.
When i execute the funciton DeviceIoControl() for the above sys file, the return code is success but the output buffer is null. The control code used is IOCTL_MAP_COMMON_BUFFER_TO_USER (User defined).
The functionality of the above control code is
The sys file will communicate to "L"\\Device\\PhysicalMemory" and will map the common buffer onto a range of virtual addresses in a process's address space.
DeviceIoControl is returning NULL buffer only after updating the below latest security patches for the Windows Embedded standard 7 OS. If i uninstall the below patches, DeviceIoControl is returning valid buffer pointer. The issue is happening even if i install any one of the below patch.
3126587
3153171
3146706
3060716
3071756
Could you please help what the above pathces is doing and do i need to change the device driver code?
Thanks in advance
What I have tried:
The below function return null buffer
r = DeviceIoControl(Display, IOCTL_MAP_COMMON_BUFFER_TO_USER, NULL, 0,
&UserPointer, sizeof(UINT_PTR), &BytesReturned, NULL);
if (UserPointer == NULL)
{
AfxMessageBox(L"NULL pointer for MAP_COMMON_BUFFER");
return;
}