This structure contains information about the current state of the input panel, such as the input panel size, screen location, docked status, and visibility status.

typedef struct {
DWORD cbSize;
DWORD fdwFlags;
RECT rcVisibleDesktop;
RECT rcSipRect; 
DWORD dwImDataSize;
VOID *pvImData;


  • cbSize
    Size, in bytes, of the SIPINFO structure. This member must be filled in by the application with the size of operator. Because the system can check the size of the structure to determine the operating system version number, this member allows for future enhancements to the SIPINFO structure while maintaining backward compatibility.

  • fdwFlags
    Specifies flags representing state information of the input panel. It is any combination of the following bit flags:

    Value Description
    SIPF_DOCKED The input panel is docked, or not floating.
    SIPF_LOCKED The input panel is locked, meaning that the user cannot change its visible status.
    SIPF_OFF The input panel is off, or not visible.
    SIPF_ON The input panel is on, or visible.
  • rcVisibleDesktop
    Rectangle, in screen coordinates, that represents the area of the desktop not obscured by the input panel. If the input panel is floating, this rectangle is equivalent to the working area. Full-screen applications that respond to input panel size changes can set their window rectangle to this rectangle. If the input panel is docked but does not occupy an entire edge, then this rectangle represents the largest rectangle not obscured by the input panel. If an application wants to use the screen space around the input panel, it needs to reference rcSipRect.

  • rcSipRect
    Rectangle, in screen coordinates of the window rectangle and not the client area, the represents the size and location of the input panel. An application does not generally use this information unless it needs to wrap around a floating or a docked input panel that does not occupy an entire edge.

  • dwImDataSize
    Specifies the size of the data pointed to by the pvImData member.

  • pvImData
    Void pointer to input method (IM)-defined data. The IM calls the IInputMethod::GetImData and IInputMethod::SetImData methods to send and receive information from this structure.


For the Palm-size PC version 1.0, SHSipInfo can either set a SIPINFO structure with the current input panel state, or take a SIPINFO structure and use its values to set the current input panel state. Call SipSetInfo to achieve the same results in Windows CE versions 2.10 and later.

In Windows CE version 3.0 and later, you cannot use SipSetInfo to resize the SIP window. Use an IM to resize the SIP window.

SIPINFO is also used by an application and an IM to send and receive IM-specific information. The IM receives information about the SIPINFO function through the IInputMethod::GetSipInfo method.

In Windows CE version 3.0 and later, an application that calls SipSetInfo cannot resize the input panel window. Only an IM can resize the input panel window.


Runs On Versions Defined in Include Link to
Windows CE OS 2.01 and later Sipapi.h    

Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also

SipSetInfo, IInputMethod::GetImData, IInputMethod::SetImData

 Last updated on Tuesday, July 13, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.