Función SetCalendarInfoA (winnls.h)
Establece un elemento de información de configuración regional para un calendario. Para obtener más información, vea Fecha y calendario.
Sintaxis
BOOL SetCalendarInfoA(
[in] LCID Locale,
[in] CALID Calendar,
[in] CALTYPE CalType,
[in] LPCSTR lpCalData
);
Parámetros
[in] Locale
Identificador de configuración regional que especifica la configuración regional. Puede usar la macro MAKELCID para crear un identificador de configuración regional o usar uno de los siguientes valores predefinidos.
También se admiten los siguientes identificadores de configuración regional personalizados.[in] Calendar
Identificador de calendario del calendario para el que se va a establecer la información.
[in] CalType
Tipo de información de calendario que se va a establecer. Solo los siguientes valores CALTYPE son válidos para esta función. La constante CAL_USE_CP_ACP solo es significativa para la versión ANSI de la función.
- CAL_USE_CP_ACP
- CAL_ITWODIGITYEARMAX
[in] lpCalData
Puntero a una cadena de información de calendario terminada en null. La información debe tener el formato del tipo de calendario especificado.
Valor devuelto
Devuelve un valor distinto de cero si es correcto o 0 de lo contrario. Para obtener información de error extendida, la aplicación puede llamar a GetLastError, que puede devolver uno de los siguientes códigos de error:
- ERROR_INTERNAL_ERROR. Error inesperado en la función .
- ERROR_INVALID_FLAGS. Los valores proporcionados para las marcas no eran válidos.
- ERROR_INVALID_PARAMETER. Cualquiera de los valores de parámetro no era válido.
Comentarios
Esta función solo afecta a la parte de invalidación del usuario de la configuración del calendario. No establece los valores predeterminados del sistema.
La información del calendario siempre se pasa como una cadena Unicode terminada en null en la versión Unicode de esta función y como una cadena ANSI terminada en null en la versión ANSI. Esta función no permite ningún entero. Los valores numéricos se deben especificar como texto Unicode o ANSI.
Cuando la versión ANSI de esta función se usa con un identificador de configuración regional solo Unicode, la función puede realizarse correctamente porque el sistema operativo usa la página de códigos del sistema. Sin embargo, los caracteres que no están definidos en la página de códigos del sistema aparecen en la cadena como signo de interrogación (?).
CAL_ITWODIGITYEARMAX se puede usar con cualquier calendario, incluso si no se admite el calendario para la configuración regional especificada. Para evitar complicaciones, la aplicación debe llamar a EnumCalendarInfo para asegurarse de que el calendario es compatible con la configuración regional de interés.
Nota
El encabezado winnls.h define SetCalendarInfo como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winnls.h (incluye Windows.h) |
Library | Kernel32.lib |
Archivo DLL | Kernel32.dll |