OEM_KernelLibIoControl

In Windows Embedded CE6 KernelLibIoControl is only callable from kernel-space. The function OEM_KernelLibIoControl is a workaround to use KernelLibIoControl from user-space.

This function is called from a driver to communicate with an interrupt handler.
See Platform-Builder-Help for details.

BOOL OEM_KernelLibIoControl( HANDLE hModule, DWORD dwIoControlCode, LPVOID lpInBuf, DWORD nInBufSize, LPVOID lpOutBuf, DWORD nOutBufSize, LPDWORD lpBytesReturned );

Parameters

hModule
[in] Handle returned from the LoadIntChainHandler function.

dwIoControlCode
[in] OEM or ISV specified IOCTL.

lpInBuf
[in] Long pointer to a buffer that contains the data required to perform the operation. This parameter can be NULL if the dwIoControlCode parameter specifies an operation that does not require input data.

nInBufSize
[in] Size, in bytes, of the buffer pointed to by lpInBuffer.

lpOutBuf
[out] Long pointer to a buffer that receives the operation's output data. This parameter can be NULL if the dwIoControlCode parameter specifies an operation that does not produce output data.

nOutBufSize
[in] Size, in bytes, of the buffer pointed to by lpOutBuffer.

lpBytesReturned
[out] Long pointer to a variable that receives the size, in bytes, of the data stored in the buffer pointed to by lpOutBuffer. The lpBytesReturned parameter cannot be NULL.

Return Values

If the function succeeds, TRUE is returned; otherwise, FALSE is returned.

Requirements

OS Versions: Windows Embedded CE 6.
Header: drvlib_app.h
Link Library: drvlib_app.lib
added: 14.03.2008