Partager via


2.2.2.10.1 Language Profile Information PDU (TS_RAIL_ORDER_LANGUAGEIMEINFO)

The Language Profile Information PDU is used to send the current active language profile of the client to the server. It is only sent when both client and server support this capability (TS_RAIL_LEVEL_LANGUAGE_IME_SYNC_SUPPORTED). This PDU contains information about the current active language profile.


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

Hdr

ProfileType

LanguageID

LanguageProfileCLSID (16 bytes)

...

...

...

...

ProfileGUID (16 bytes)

...

...

...

...

KeyboardLayout

...

Hdr (4 bytes): A TS_RAIL_PDU_HEADER header. The orderType field of the header MUST be set to TS_RAIL_ORDER_LANGUAGEIMEINFO (0x0011).

ProfileType (4 bytes): An unsigned 4-byte integer that identifies the profile type of the language. The value SHOULD be either TF_PROFILETYPE_INPUTPROCESSOR (0x0001) or TF_PROFILETYPE_KEYBOARDLAYOUT (0x0002).

Value

Meaning

TF_PROFILETYPE_INPUTPROCESSOR

0x00000001

Indicates that the profile type is an input processor.

TF_PROFILETYPE_KEYBOARDLAYOUT

0x00000002

Indicates that the profile type is a keyboard layout.

LanguageID (2 bytes): An unsigned 2-byte integer. This is the language identifier that identifies both the language and the country/region. For a list of language identifiers, see [MSDN-MUI].

LanguageProfileCLSID (16 bytes): A globally unique identifier (section 2.2.2.10.1.1) that uniquely identifies the text service of the client. This field MUST be set to GUID_NULL if the ProfileType field is set to TF_PROFILETYPE_KEYBOARDLAYOUT (0x0002).

Value

Meaning

GUID_NULL

{0x00000000, 0x0000, 0x0000, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}

Indicates that there is no input processor.

GUID_MSIME_JPN

{0x03B5835F, 0xF03C, 0x411B, 0x9C, 0xE2, 0xAA, 0x23, 0xE1, 0x17, 0x1E, 0x36}

Indicates that the input processor is Japanese.

GUID_MSIME_KOR

{0xA028AE76, 0x01B1, 0x46C2, 0x99, 0xC4, 0xAC, 0xD9, 0x85, 0x8A, 0xE0, 0x2}

Indicates that the input processor is Korean.

GUID_CHSIME

{0x81D4E9C9, 0x1D3B, 0x41BC, 0x9E, 0x6C, 0x4B, 0x40, 0xBF, 0x79, 0xE3, 0x5E}

Indicates that the input processor is Chinese Simplified.

GUID_CHTIME

{0x531FDEBF, 0x9B4C, 0x4A43, 0xA2, 0xAA, 0x96, 0x0E, 0x8F, 0xCD, 0xC7, 0x32}

Indicates that the input processor is Chinese (Taiwanese).

ProfileGUID (16 bytes): A globally unique identifier (section 2.2.2.10.1.1) that uniquely identifies the language profile of the client. This field MUST be set to GUID_NULL if the ProfileType field is set to TF_PROFILETYPE_KEYBOARDLAYOUT (0x0002).

Value

Meaning

GUID_NULL

{0x00000000, 0x0000, 0x0000, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}

Indicates that there is no profile.

GUID_PROFILE_NEWPHONETIC

{0xB2F9C502, 0x1742, 0x11D4, 0x97, 0x90, 0x00, 0x80, 0xC8, 0x82, 0x68, 0x7E}

Indicates that the profile is new phonetic.

GUID_PROFILE_CHANGJIE

{0x4BDF9F03, 0xC7D3, 0x11D4, 0xB2, 0xAB, 0x00, 0x80, 0xC8, 0x82, 0x68, 0x7E}

Indicates that the profile is ChangJie.

GUID_PROFILE_QUICK

{0x6024B45F, 0x5C54, 0x11D4, 0xB9, 0x21, 0x00, 0x80, 0xC8, 0x82, 0x68, 0x7E}

Indicates that the profile is Quick type.

GUID_PROFILE_CANTONESE

{0x0AEC109C, 0x7E96, 0x11D4, 0xB2, 0xEF, 0x00, 0x80, 0xC8, 0x82, 0x68, 0x7E}

Indicates that the profile is Cantonese.

GUID_PROFILE_PINYIN

{0xF3BA9077, 0x6C7E, 0x11D4, 0x97, 0xFA, 0x00, 0x80, 0xC8, 0x82, 0x68, 0x7E}

Indicates that the profile is PinYin.

GUID_PROFILE_SIMPLEFAST

{0xFA550B04, 0x5AD7, 0x411F, 0xA5, 0xAC, 0xCA, 0x03, 0x8E, 0xC5, 0x15, 0xD7}

Indicates that the profile is SimpleFast.

GUID_GUID_PROFILE_MSIME_JPN

{0xA76C93D9, 0x5523, 0x4E90, 0xAA, 0xFA, 0x4D, 0xB1, 0x12, 0xF9, 0xAC, 0x76}

Indicates that the profile is Microsoft Japanese IME.

GUID_PROFILE_MSIME_KOR

{0xB5FE1F02, 0xD5F2, 0x4445, 0x9C, 0x03, 0xC5, 0x68, 0xF2, 0x3C, 0x99, 0xA1}

Indicates that the profile is Microsoft Korean IME.

KeyboardLayout (4 bytes): An unsigned 4-byte integer. The active input locale identifier, also known as the "HKL" (for example, 0x00010409 identifies a "United States-Dvorak" keyboard layout, while 0x00020418 is a "Romanian (Programmers)" keyboard layout). For a list of input locale identifiers, see [MSFT-DIL].