Keyboard Support

Contact and Search

Keyman.com Homepage

Header bottom

Keyman.com

Other versions
Version 19.0Version 18.0 (current version)Version 14.0

On this page

You are viewing an old version of this documentation. Click here to open the current version, 18.0.

IKeymanKeyboardLanguageInstalled2::FindInstallationLangID Method


Introduction

The IKeymanKeyboardLanguageInstalled2::FindInstallationLangID method finds a LANGID for the language, which can then be passed into IKeymanKeyboardLanguageInstalled2::RegisterTip and IKeymanKeyboardLanguageInstalled2::InstallTip to complete registration.

If the BCP 47 tag does not have a corresponding system LANGID, then Windows will allocate one of four transient LANGIDs to the tag. These LANGIDs can differ between systems. In this situation, Windows installs a temporary placeholder system keyboard which Keyman then replaces as it completes the installation process.

Specification

bool FindInstallationLangID(long* LangID, string* TemporaryKeyboardID, bool *RegistrationRequired, tagKeymanInstallFlags Flags);

Parameters

LangID
On success, this is filled with the corresponding LANGID.
TemporaryKeyboardID
On success, and if the kifInstallTransientLanguage flag is specified, this may contain a string which should be passed to InstallTip to be replaced with the Keyman keyboard. Internally, this string conforms to the Windows API InstallLayoutorTip format.
RegistrationRequired
If True, a call to RegisterTip will be required to complete installation of this language, as Keyman is not currently registered for this language with the Text Services Framework.
Flags
Can be 0 or kifInstallTransientLanguage. If kifInstallTransientLanguage is specified, then Keyman will install a transient language (Windows 8 or later) for BCP 47 tags that do not have a corresponding system LANGID.

Returns

Returns True if a corresponding LANGID was found.

See also

InstallTip()
Installs a registered language profile (persists over reboot) for the current user.
RegisterTip()
Registers a language profile in Text Services Framework for this language (requires elevation).