2.2.2.4.1 Client System Parameters Update PDU (TS_RAIL_ORDER_SYSPARAM)

The Client System Parameters Update PDU is sent from the client to the server to synchronize system parameters on the server with those on the client.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

header

SystemParam

Body (variable)

...

header (4 bytes): A TS_RAIL_PDU_HEADER structure. The orderType field of header MUST be set to TS_RAIL_ORDER_SYSPARAM(0x0003).

SystemParam (4 bytes): An unsigned 32-bit integer. The type of system parameter being transmitted. The field MUST be set to one of the following values.

Value

Meaning

SPI_SETDRAGFULLWINDOWS

0x00000025

The system parameter for full-window drag.

SPI_SETKEYBOARDCUES

0x0000100B

The system parameter to determine whether menu access keys are always underlined.

SPI_SETKEYBOARDPREF

0x00000045

The system parameter specifying a preference for the keyboard instead of the mouse.

SPI_SETWORKAREA

0x0000002F

The system parameter to set the size of the work area. The work area is the portion of the screen not obscured by the system taskbar or by application desktop toolbars.

RAIL_SPI_DISPLAYCHANGE

0x0000F001

The system parameter for display resolution.

SPI_SETMOUSEBUTTONSWAP

0x00000021

The system parameter to swap or restore the meaning of the left and right mouse buttons.

RAIL_SPI_TASKBARPOS

0x0000F000

The system parameter to indicate the size of the client taskbar.

SPI_SETHIGHCONTRAST
0x00000043

The system parameter to set the parameters of the HighContrast accessibility feature.

SPI_SETCARETWIDTH

0x00002007

The system parameter to set the caret width used for text entry controls. This flag SHOULD NOT be sent if the server did not advertise the EXTENDED_SPI_SUPPORTED flag in the HandshakeEx PDU (section 2.2.2.2.3).

SPI_SETSTICKYKEYS

0x0000003B

The system parameter to set the parameters of the Sticky Keys accessibility feature. This flag SHOULD NOT be sent if the server did not advertise the EXTENDED_SPI_SUPPORTED flag in the HandshakeEx PDU.

SPI_SETTOGGLEKEYS

0x00000035

The system parameter to set the parameters of the Toggle Keys accessibility feature. This flag SHOULD NOT be sent if the server did not advertise the EXTENDED_SPI_SUPPORTED flag in the HandshakeEx PDU.

SPI_SETFILTERKEYS

0x00000033

The system parameter to set the parameters of the Filter Keys accessibility feature. This flag SHOULD NOT be sent if the server did not advertise the EXTENDED_SPI_SUPPORTED flag in the HandshakeEx PDU.

Body (variable): The contents of this field depend on the SystemParam field. The following table outlines the valid values of the SystemParam field (Value column) and corresponding values of the Body field (Meaning column).

Value

Meaning

SPI_SETDRAGFULLWINDOWS

0x0025

Size of Body field: 1 byte.

0 (FALSE): Full Window Drag is disabled. Nonzero (TRUE): Full Window Drag is enabled.

SPI_SETKEYBOARDCUES

0x100B

Size of Body field: 1 byte.

0 (FALSE): Menu Access Keys are underlined only when the menu is activated by the keyboard. Nonzero (TRUE): Menu Access Keys are always underlined.

SPI_SETKEYBOARDPREF

0x0045

Size of Body field: 1 byte.

0 (FALSE): The user does not prefer the keyboard over mouse. Nonzero (TRUE): The user prefers the keyboard over mouse. This causes applications to display keyboard interfaces that would otherwise be hidden.

SPI_SETMOUSEBUTTONSWAP

0x0021

Size of Body field: 1 byte.

0 (FALSE): Restores the meaning of the left and right mouse buttons to their original meanings. Nonzero (TRUE): Swaps the meaning of the left and right mouse buttons.

SPI_SETWORKAREA

0x002F

Size of Body field: 8 bytes.

The body is a TS_RECTANGLE_16 structure that defines the work area in virtual screen coordinates. In a system with multiple display monitors, the work area is that of the monitor that contains the specified rectangle. For more information about virtual screen coordinates, see [MSDN-VIRTUALSCR].

RAIL_SPI_DISPLAYCHANGE

0xF001

Size of Body field: 8 bytes.

The body is a TS_RECTANGLE_16 structure that indicates the new display resolution in virtual screen coordinates. For more information about virtual screen coordinates, see [MSDN-VIRTUALSCR].

RAIL_SPI_TASKBARPOS

0xF000

Size of Body field: 8 bytes.

The body is a TS_RECTANGLE_16 structure that indicates the size of the client taskbar.

SPI_SETHIGHCONTRAST

0x0043

Size of Body field: Variable number of bytes.

The body is a TS_HIGHCONTRAST structure.

SPI_SETCARETWIDTH

0x00002007

Size of Body field: 4 bytes.

The body is an unsigned 32-bit integer that indicates the width of the caret. The minimum allowed value is 0x00000001.

SPI_SETSTICKYKEYS

0x0000003B

Size of Body field: 4 bytes.

The body is a TS_STICKYKEYS structure.

SPI_SETTOGGLEKEYS

0x00000035

Size of Body field: 4 bytes.

The body is a TS_TOGGLEKEYS structure.

SPI_SETFILTERKEYS

0x00000033

Size of Body field: 20 bytes.

The body is a TS_FILTERKEYS structure.