InstallLayoutOrTip function

Enables the specified keyboard layouts or text services.

Syntax


BOOL CALLBACK InstallLayoutOrTip(
  _In_  LPCWSTR psz,
  _In_  DWORD dwFlags
);

Parameters

psz [in]

A string that represents the keyboard layout list or text services profile list.

dwFlags [in]

A bitfield that specifies the following flags:

Note  The following identifiers are not defined in a public header file. You must either use the hexadecimal value or #define the identifiers. For example, to use ILOT_UNINSTALL you must include #define ILOT_UNINSTALL 0x00000001 in your code.

ValueMeaning
ILOT_UNINSTALL
0x00000001

Same as ILOT_DISABLED.

ILOT_DEFPROFILE
0x00000002

Sets the specified layout or tip as a default item.

ILOT_DEFUSER4
0x00000004

Changes the setting of .Default.

ILOT_SYSLOCALE
0x00000008

Unused.

ILOT_NOLOCALETOENUMERATE
0x00000010

Unused.

ILOT_NOAPPLYTOCURRENTSESSION
0x00000020

The setting is saved but is not applied to the current session.

ILOT_CLEANINSTALL
0x00000040

Disables all of the current keyboard layouts and text services.

ILOT_DISABLED
0x00000080

Disables the specified keyboard layout and text service.

 

Return value

Return codeDescription
TRUE

The function was successful.

FALSE

An unspecified error occurred.

 

Remarks

The string format of the layout list is:

<LangID 1>:<KLID 1>;[...<LangID N>:<KLID N>

The string format of the text service profile list is:

<LangID 1>:{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx};

The following is an example of a value for the psz parameter:



"0x0407:0x00000407"
"0x0407:0x00000407;0x040C:0x0000040C"
"0x0407:0x00000407;0x0412:{A028AE76-01B1-46C2-99C4-ACD9858AE02F}{B5FE1F02-D5F2-4445-9C03-C568F23C99A1};0x040C:0x0000040C"


Examples

There is no import library available that defines this function, so it is necessary to obtain a pointer to this function using LoadLibrary and GetProcAddress.

Note  Using LoadLibrary incorrectly can compromise the security of your application by loading the wrong DLL. Refer to Dynamic-Link Library Search Order for information on how to correctly load DLLs with different versions of Microsoft Windows.



typedef HRESULT (WINAPI *PTF_ INSTALLLAYOUTORTIP)(LPCWSTR psz, DWORD dwFlasg);

HMODULE hInputDLL = LoadLibrary(TEXT("input.dll"));
BOOL bRet = FALSE;

if(hInputDLL == NULL)
{
    // Error loading module; fail as securely as possible. 
}
else
{
    PTF_ INSTALLLAYOUTORTIP pfnInputLayoutOrTip;
    
    pfnInputLayoutOrTip = (PTF_ INSTALLLAYOUTORTIP)GetProcAddress(hInputDLL, "InputLayoutOrTip");

    if(pfnInputLayoutOrTip)
    {
        bRet = (*pfnInputLayoutOrTip)(psz, dwFlags);
    }

    FreeLibrary(hInputDLL);
}



Requirements

Minimum supported client

Windows Vista [desktop apps only]

Minimum supported server

Windows Server 2008 [desktop apps only]

DLL

Input.dll

 

 

Community Additions

ADD
Show:
© 2014 Microsoft