Share via


CeDriverPerformCallback (Compact 2013)

3/26/2014

This function is used by a driver to perform callback upon IO completion.

Syntax

BOOL CeDriverPerformCallback(
  HANDLE hCallback,
  DWORD dwIoControlCode,
  LPVOID lpInBuf,
  DWORD nInBufSize,
  LPVOID lpOutBuf,
  DWORD nOutBufSize,
  LPDWORD lpBytesReturned,
  LPOVERLAPPED lpOverlapped
);

Parameters

  • hCallback
    [in] Specifies a handle to a handle-based API.
  • dwIoControlCode
    [in] IOCTL for the operation. This value identifies the specific operation to perform and the type of device on which to perform the operation. There are no specific values defined for the dwIoControlCode parameter. However, you can define custom IOCTL_XXX IOCTLs with the CTL_CODE macro. You can then advertise these IOCTLs and an application can use these IOCTLs with DeviceIoControl to perform the driver-specific functions.
  • lpInBuf
    [in] Long pointer to a buffer that contains the data required to perform the operation. Set to 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 lpInBuf.
  • lpOutBuf
    [out] Long pointer to a buffer that receives the output data for the operation. Set to NULL if the dwIoControlCode parameter specifies an operation that does not produce output data.
  • nOutBufSize
    [out] Size, in bytes, of the buffer pointed to by lpOutBuf.
  • lpBytesReturned
    [out] Long pointer to a variable that receives the size, in bytes, of the data stored in lpOutBuffer.
  • lpOverlapped
    [in] Ignored; set to NULL.

Return Value

Returns a non-zero value on success. Returns zero on failure. For extended error information, call GetLastError.

Remarks

During IO request, if caller is from a different processor, call CeDriverDuplicateCallerHandle prior to using this function.

Requirements

Header

ceddk.h

Library

CEDDK.lib

See Also

Reference

User Mode Driver Framework Functions

Other Resources

User Mode Driver Framework