Funzione SetCalendarInfoA (winnls.h)

Imposta un elemento di informazioni sulle impostazioni locali per un calendario. Per altre informazioni, vedere Data e Calendario.

Sintassi

BOOL SetCalendarInfoA(
  [in] LCID    Locale,
  [in] CALID   Calendar,
  [in] CALTYPE CalType,
  [in] LPCSTR  lpCalData
);

Parametri

[in] Locale

Identificatore delle impostazioni locali che specifica le impostazioni locali. È possibile utilizzare la macro MAKELCID per creare un identificatore delle impostazioni locali o usare uno dei valori predefiniti seguenti.

Sono supportati anche gli identificatori di impostazioni locali personalizzati seguenti.

[in] Calendar

Identificatore del calendario per il quale impostare le informazioni.

[in] CalType

Tipo di informazioni sul calendario da impostare. Solo i valori CALTYPE seguenti sono validi per questa funzione. La costante CAL_USE_CP_ACP è significativa solo per la versione ANSI della funzione.

  • CAL_USE_CP_ACP
  • CAL_ITWODIGITYEARMAX
L'applicazione può specificare un solo identificatore di calendario per ogni chiamata a questa funzione. È possibile creare un'eccezione se l'applicazione usa l'operatore OR binario per combinare CAL_USE_CP_ACP con qualsiasi valore CALTYPE valido definito in Calendar Type Information.

[in] lpCalData

Puntatore a una stringa di informazioni sul calendario con terminazione Null. Le informazioni devono essere nel formato del tipo di calendario specificato.

Valore restituito

Restituisce un valore diverso da zero se ha esito positivo o 0 in caso contrario. Per ottenere informazioni estese sull'errore, l'applicazione può chiamare GetLastError, che può restituire uno dei codici di errore seguenti:

  • ERROR_INTERNAL_ERROR. Si è verificato un errore imprevisto nella funzione .
  • ERROR_INVALID_FLAGS. I valori specificati per i flag non sono validi.
  • ERROR_INVALID_PARAMETER. Uno dei valori dei parametri non è valido.

Commenti

Questa funzione influisce solo sulla parte di override dell'utente delle impostazioni del calendario. Non imposta le impostazioni predefinite del sistema.

Le informazioni sul calendario vengono sempre passate come stringa Unicode con terminazione Null nella versione Unicode di questa funzione e come stringa ANSI con terminazione Null nella versione ANSI. Nessun numero intero consentito da questa funzione. Qualsiasi valore numerico deve essere specificato come testo Unicode o ANSI.

Quando la versione ANSI di questa funzione viene usata con un identificatore delle impostazioni locali solo Unicode, la funzione può avere esito positivo perché il sistema operativo usa la tabella codici del sistema. Tuttavia, i caratteri non definiti nella tabella codici di sistema vengono visualizzati nella stringa come punto interrogativo (?).

CAL_ITWODIGITYEARMAX può essere usato con qualsiasi calendario, anche se il calendario non è supportato per le impostazioni locali specificate. Per evitare complicazioni, l'applicazione deve chiamare EnumCalendarInfo per assicurarsi che il calendario sia supportato per le impostazioni locali di interesse.

Nota

L'intestazione winnls.h definisce SetCalendarInfo come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winnls.h (include Windows.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

EnumCalendarInfo

GetCalendarInfo

Supporto per la lingua nazionale

Funzioni di supporto per il linguaggio nazionale