WINCE6的KernelIoControl函数在用户模式和内核模式下都可以调用,但是有很大的差别。
oalioctl.dll的源码在"WINCE600/PUBLIC/COMMON/OAK/OALIOCTL/"文件夹中,
IOControl函数对IO控制代码做了判断,是下列值时调用BSP中的OEMIoControl函数并传递所有的参数,否则设置ERROR_NOT_SUPPORTED错误代码并返回FALSE。
- 在内核模式下调用KernelIoControl最终会执行到BSP中的OEMIoControl函数。
- 在用户模式下则是调用oalioctl.dll中的IOControl函数。
oalioctl.dll的源码在"WINCE600/PUBLIC/COMMON/OAK/OALIOCTL/"文件夹中,
IOControl函数对IO控制代码做了判断,是下列值时调用BSP中的OEMIoControl函数并传递所有的参数,否则设置ERROR_NOT_SUPPORTED错误代码并返回FALSE。
- IOCTL_HAL_GET_CACHE_INFO
- IOCTL_HAL_GET_DEVICE_INFO
- IOCTL_HAL_GET_DEVICEID
- IOCTL_HAL_GET_UUID
- IOCTL_PROCESSOR_INFORMATION