Freigeben über


GetCalendarInfoA-Funktion (winnls.h)

Ruft Informationen zu einem Kalender für ein gebietsschema ab, das durch bezeichner angegeben wird.

Hinweis Aus Interoperabilitätsgründen sollte die Anwendung die GetCalendarInfoEx--Funktion vorziehen, um getCalendarInfo zu , da Microsoft zur Verwendung von Gebietsschemanamen anstelle von Gebietsschemabezeichnern für neue Gebietsschemas migriert wird. Jede Anwendung, die nur unter Windows Vista und höher ausgeführt wird, sollte GetCalendarInfoExverwenden.
 

Syntax

int GetCalendarInfoA(
  [in]            LCID    Locale,
  [in]            CALID   Calendar,
  [in]            CALTYPE CalType,
  [out, optional] LPSTR   lpCalData,
  [in]            int     cchData,
  [out, optional] LPDWORD lpValue
);

Parameter

[in] Locale

Gebietsschema-ID, das das Gebietsschema angibt, für das Kalenderinformationen abgerufen werden sollen. Sie können das MAKELCID Makro verwenden, um einen Gebietsschemabezeichner zu erstellen oder einen der folgenden vordefinierten Werte zu verwenden.

[in] Calendar

Kalenderbezeichner.

[in] CalType

Typ der abzurufenden Informationen. Weitere Informationen finden Sie unter Kalendertypinformationen.

HinweisGetCalendarInfo- gibt nur eine Zeichenfolge zurück, wenn dieser Parameter CAL_IYEAROFFSETRANGE oder CAL_SERASTRING angibt. In beiden Fällen wird die aktuelle Ära zurückgegeben.
 
CAL_USE_CP_ACP ist nur für die ANSI-Version dieser Funktion relevant.

Für CAL_NOUSEROVERRIDE ignoriert die Funktion alle von SetCalendarInfo festgelegten Werte und verwendet die Datenbankeinstellungen für das aktuelle Systemstandardgebietsschema. Dieser Typ ist nur in der Kombination CAL_NOUSEROVERRIDE | CAL_ITWODIGITYEARMAX. CAL_ITWODIGITYEARMAX ist der einzige Wert, der von SetCalendarInfofestgelegt werden kann.

[out, optional] lpCalData

Zeiger auf einen Puffer, in dem diese Funktion die angeforderten Daten als Zeichenfolge abruft. Wenn CAL_RETURN_NUMBER in CalType-angegeben ist, muss dieser Parameter NULL-abrufen.

[in] cchData

Größe des lpCalData- Puffers in Zeichen. Die Anwendung kann diesen Parameter auf 0 festlegen, um die erforderliche Größe für den Kalenderdatenpuffer zurückzugeben. In diesem Fall wird der lpCalData Parameter nicht verwendet. Wenn CAL_RETURN_NUMBER für CalType-angegeben ist, muss der Wert cchData- 0 sein.

[out, optional] lpValue

Zeiger auf eine Variable, die die angeforderten Daten als Zahl empfängt. Wenn CAL_RETURN_NUMBER in CalType-angegeben ist, darf lpValue- nicht NULL-sein. Wenn CAL_RETURN_NUMBER in CalTypenicht angegeben ist, muss lpValue-NULL-sein.

Rückgabewert

Gibt die Anzahl der im lpCalData Puffer abgerufenen Zeichen zurück, wobei cchData- bei erfolgreicher Ausführung auf einen Wert ungleich Null festgelegt ist. Wenn die Funktion erfolgreich ist, wird cchData- auf 0 festgelegt, und CAL_RETURN_NUMBER nicht angegeben ist, ist der Rückgabewert die Größe des Puffers, der zum Halten der Kalenderinformationen erforderlich ist. Wenn die Funktion erfolgreich ist, cchData- auf 0 festgelegt ist und CAL_RETURN_NUMBER angegeben wird, ist der Rückgabewert die Größe des in lpValueabgerufenen Werts, d. h. 2 für die Unicode-Version der Funktion oder 4 für die ANSI-Version.

Diese Funktion gibt 0 zurück, wenn sie nicht erfolgreich ist. Um erweiterte Fehlerinformationen zu erhalten, kann die Anwendung GetLastErroraufrufen, wodurch eine der folgenden Fehlercodes zurückgegeben werden kann:

  • ERROR_INSUFFICIENT_BUFFER. Eine angegebene Puffergröße war nicht groß genug, oder sie wurde fälschlicherweise auf NULL-festgelegt.
  • ERROR_INVALID_FLAGS. Die für Flags angegebenen Werte waren ungültig.
  • ERROR_INVALID_PARAMETER. Ungültige Parameterwerte.

Bemerkungen

Hinweis Diese API wird aktualisiert, um die Änderung im japanischen Zeitalter vom Mai 2019 zu unterstützen. Wenn Ihre Anwendung den japanischen Kalender unterstützt, sollten Sie überprüfen, ob sie die neue Ära ordnungsgemäß behandelt. Weitere Informationen finden Sie unter Vorbereiten ihrer Anwendung für die japanische Ära.
 
Wenn die ANSI-Version dieser Funktion mit einem Nur-Unicode-Gebietsschemabezeichner verwendet wird, kann die Funktion erfolgreich sein, da das Betriebssystem die Systemcodepage verwendet. Zeichen, die auf der Systemcodeseite nicht definiert sind, werden jedoch in der Zeichenfolge als Fragezeichen (?) angezeigt.

Anmerkung

Der winnls.h-Header definiert GetCalendarInfo als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante 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
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- winnls.h (enthalten Windows.h)
Library Kernel32.lib
DLL- Kernel32.dll

Siehe auch

Kalendertypinformationen

GetCalendarInfoEx-

Funktionen

SetCalendarInfo-