Share via


IOCTL_EDBG_REGISTER_CLIENT (Compact 2013)

10/16/2014

This I/O control message registers a KITL client and activates passive KITL clients. Send this message with KernelIoControl.

Syntax

BOOL KernelIoControl(
    DWORD dwIoControlCode,
    LPVOID pId,
    DWORD Flags,
    LPVOID ServiceName,
    DWORD WindowSize,
    LPDWORD pBufferPool
);

Parameters

  • dwIoControlCode
    [in] Control code for the operation. Use IOCTL_EDBG_REGISTER_CLIENT for this operation.
  • pId
    [in] Set to NULL.
  • Flags
    [in] Specifies the action to take. The flags are defined in %_WINCEROOT%\Public\Common\Oak\Inc\Kitlprot.h. The following table shows possible flags for this parameter.

    Flag

    Description

    KITL_CFGFL_STOP_AND_WAIT

    Stop after each transmission and wait for an acknowledgement.

    KITL_CFGFL_MULTIINST

    Allow multiple instances of this service on the device.

  • ServiceName
    [in] Pointer to the string that contains the name of the service that is being registered. The string should be null terminated and should be up to MAX_SVCNAME_LEN characters.
  • WindowSize
    [in] Protocol window size up to KITL_MAX_WINDOW_SIZE. The default value is 8.
  • pBufferPool
    [in] Pointer to a buffer pool to use for KITL packet buffers. The size of the buffer pool must be equal to WindowSize*2* KITL_MTU.

Return Values

Returns TRUE if successful; otherwise, returns FALSE.

Remarks

The CE 4.2 kernel has been enhanced to automatically register default KITL clients. Previously this I/O control enabled the user to perform this action. Moving forward your code does not need to handle the registration of default KITL clients. However, this control remains so you can register custom clients. If your BSP doesn't handle custom KITL clients it can be freed of code using this control.

Requirements

Header

pkfuncs.h

See Also

Reference

EDBG IOCTLs
KITL IOCTLs