Freigeben über


SetLocaleInfoA-Funktion (winnls.h)

Legt ein Informationselement im Benutzerüberschreibungsteil des aktuellen Gebietsschemas fest. Diese Funktion legt die Systemstandardeinstellungen nicht fest.

Vorsicht Da diese Funktion Werte für alle Anwendungen ändert, sollte sie nur von der Regionalen- und Sprachoptionsfunktionalität von Systemsteuerung oder einem ähnlichen Hilfsprogramm aufgerufen werden. Wenn Sie eine internationale Änderung an Systemparametern vornehmen, muss die aufrufende Anwendung die WM_SETTINGCHANGE Nachricht übertragen, um Instabilitäten in anderen Anwendungen zu vermeiden.
 

Syntax

BOOL SetLocaleInfoA(
  [in] LCID   Locale,
  [in] LCTYPE LCType,
  [in] LPCSTR lpLCData
);

Parameter

[in] Locale

Für die ANSI-Version der Funktion der Gebietsschemabezeichner mit der Codepage, die beim Interpretieren der lpLCData-Informationen verwendet wird. Für die Unicode-Version wird dieser Parameter ignoriert.

Sie können das MAKELCID-Makro verwenden, um einen Gebietsschemabezeichner zu erstellen oder einen der folgenden vordefinierten Werte zu verwenden.

Die folgenden benutzerdefinierten Gebietsschemabezeichner werden ebenfalls unterstützt.

[in] LCType

Typ der festzulegenden Gebietsschemainformationen. Gültige Konstanten finden Sie im Abschnitt "Im LCType-Parameter von GetLocaleInfo, GetLocaleInfoEx und SetLocaleInfo verwendete Konstanten" im Abschnitt Gebietsschemainformationskonstanten. Die Anwendung kann nur einen Wert pro Aufruf angeben, aber sie kann den binären OR-Operator verwenden, um LOCALE_USE_CP_ACP mit jeder anderen Konstanten zu kombinieren.

[in] lpLCData

Zeiger auf eine NULL-endende Zeichenfolge, die die festzulegenden Gebietsschemainformationen enthält. Die Informationen müssen das für die angegebene Konstante spezifische Format aufweisen. Die Anwendung verwendet eine Unicode-Zeichenfolge für die Unicode-Version der Funktion und eine ANSI-Zeichenfolge für die ANSI-Version.

Rückgabewert

Gibt bei erfolgreicher Ausführung einen Wert ungleich 0 zurück, andernfalls 0. Um erweiterte Fehlerinformationen zu erhalten, kann die Anwendung GetLastError aufrufen, wodurch einer der folgenden Fehlercodes zurückgegeben werden kann:

  • ERROR_ACCESS_DISABLED_BY_POLICY. Die Gruppenrichtlinie des Computers oder des Benutzers hat diesen Vorgang verboten.
  • ERROR_INVALID_ACCESS. Der Zugriffscode war ungültig.
  • ERROR_INVALID_FLAGS. Die für Flags angegebenen Werte waren ungültig.
  • ERROR_INVALID_PARAMETER. Jeder der Parameterwerte war ungültig.

Hinweise

Diese Funktion schreibt in die Registrierung, in der werte festgelegt werden, die einem bestimmten Benutzer und nicht einer bestimmten Anwendung zugeordnet sind. Diese Registrierungswerte wirken sich auf das Verhalten anderer Anwendungen aus, die vom Benutzer ausgeführt werden. In der Regel sollte eine Anwendung diese Funktion nur aufrufen, wenn der Benutzer die Änderungen explizit angefordert hat. Die Registrierungseinstellungen sollten zur Vereinfachung einer einzelnen Anwendung nicht geändert werden.

Für den LCType-Parameter sollte die Anwendung LOCALE_USE_CP_ACP so festlegen, dass die ANSI-Codepage des Betriebssystems anstelle der Gebietsschemacodepage für die Zeichenfolgenübersetzung verwendet wird.

Wenn die ANSI-Version dieser Funktion mit einem reinen Unicode-Gebietsschemabezeichner verwendet wird, kann die Funktion erfolgreich ausgeführt werden, da das Betriebssystem die Systemcodepage verwendet. Jedoch werden Zeichen, die auf der Systemcodepage nicht definiert sind, in der Zeichenfolge als Fragezeichen (?) angezeigt.

Ab Windows Vista sind die LOCALE_SDATE - und LOCALE_STIME konstanten veraltet. Verwenden Sie diese Konstanten nicht. Verwenden Sie stattdessen LOCALE_SSHORTDATE und LOCALE_STIMEFORMAT . Ein benutzerdefiniertes Gebietsschema verfügt möglicherweise nicht über ein einzelnes, einheitliches Trennzeichen innerhalb des Datums- oder Uhrzeitformats. Beispielsweise kann ein Format wie "31.12.12.2006" oder "03:56'23" gültig sein.

Hinweis

Der winnls.h-Header definiert SetLocaleInfo als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winnls.h (windows.h einschließen)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

GetLocaleInfo

Unterstützung für landessprachliche Sprachen

Unterstützungsfunktionen für nationalsprachliche Sprachen