SetDefaultLayoutOrTip-Funktion

Legt das angegebene Tastaturlayout oder einen Textdienst als Standardeingabeelement des aktuellen Benutzers fest.

Syntax

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

Parameter

psz [ In]

Eine Zeichenfolge, die eine Tastaturlayoutliste oder eine Textdienstprofilliste darstellt.

dwFlags [ In]

Ein Bitfeld, das die folgenden Flags angibt.

Hinweis

Die folgenden Bezeichner sind in einer öffentlichen Headerdatei nicht definiert. Sie müssen entweder den Hexadezimalwert verwenden oder # die Bezeichner definieren. Um z. B. SDLOT _ NOAPPLYTOCURRENTSESSION zu verwenden, müssen Sie # SDLOT _ NOAPPLYTOCURRENTSESSION 0x00000001 in Ihren Code einschließen.

Wert Bedeutung
SDLOT _ NOAPPLYTOCURRENTSESSION-0x00000001
Speichert die Einstellung in der Registrierung, aktualisiert jedoch nicht die Laufzeittastatureinstellung der aktuellen Sitzung. Wenn der alternative Registrierungspfad in SetDefaultLayoutOrTipUserRegfestgelegt ist, sollte dieses Flag festgelegt werden.
SDLOT _ APPLYTOCURRENTTHREAD-0x00000002
Wendet die Einstellung sofort auf den aktuellen Thread an.

Rückgabewert

Rückgabecode Beschreibung
STIMMT
Die Funktion war erfolgreich.
FALSE
Es ist ein unbekannter Fehler aufgetreten.

Hinweise

Das Zeichenfolgenformat der Layoutliste lautet:

<LangID 1>:<SOLLD 1>; [ ...:

Das Zeichenfolgenformat der Textdienstprofilliste lautet:

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

Im Folgenden wird ein Beispiel für einen Wert für den psz-Parameter angezeigt:

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

Beispiele

Es ist keine Importbibliothek verfügbar, die diese Funktion definiert. Daher ist es erforderlich, mit LoadLibrary und GetProcAddresseinen Zeiger auf diese Funktion abzurufen. Im folgenden Beispiel wird veranschaulicht, wie sie einen Zeiger auf diese Funktion abrufen.

Hinweis

Die falsche Verwendung von LoadLibrary kann die Sicherheit Ihrer Anwendung beeinträchtigen, indem die falsche DLL geladen wird. Informationen zum ordnungsgemäßen Laden von DLLs mit verschiedenen Versionen von Microsoft Windows finden Sie unter Suchreihenfolge der Dynamic Link Library.

typedef HRESULT (WINAPI *PTF_ SETDEFAULTLAYOUTORTIP)(LPCWSTR psz);

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

if(hInputDLL == NULL)
{
    // Error loading module; fail as securely as possible. 
}
else
{
    PTF_ SETDEFAULTLAYOUTORTIP pfnSetDefaultLayoutOrTip;
    
    pfnSetDefaultLayoutOrTip = (PTF_ SETDEFAULTLAYOUTORTIP)GetProcAddress(hInputDLL, "SetDefaultLayoutOrTip");

    if(pfnSetDefaultLayoutOrTip)
    {
        bRet = (*pfnSetDefaultLayoutOrTip)(psz);
    }

    FreeLibrary(hInputDLL);
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows [Nur Vista-Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Nur Server [ 2008-Desktop-Apps]
DLL
Input.dll