Função SetCalendarInfoA (winnls.h)
Define um item de informações de localidade para um calendário. Para obter mais informações, consulte Data e Calendário.
Sintaxe
BOOL SetCalendarInfoA(
[in] LCID Locale,
[in] CALID Calendar,
[in] CALTYPE CalType,
[in] LPCSTR lpCalData
);
Parâmetros
[in] Locale
Identificador de localidade que especifica a localidade. Você pode usar a macro MAKELCID para criar um identificador de localidade ou usar um dos valores predefinidos a seguir.
Também há suporte para os seguintes identificadores de localidade personalizados.[in] Calendar
Identificador de calendário para o calendário para o qual definir informações.
[in] CalType
Tipo de informações de calendário a serem definidas. Somente os seguintes valores CALTYPE são válidos para essa função. A constante CAL_USE_CP_ACP só é significativa para a versão ANSI da função.
- CAL_USE_CP_ACP
- CAL_ITWODIGITYEARMAX
[in] lpCalData
Ponteiro para uma cadeia de caracteres de informações de calendário terminada em nulo. As informações devem estar no formato do tipo de calendário especificado.
Valor retornado
Retornará um valor diferente de zero se tiver êxito ou 0 caso contrário. Para obter informações de erro estendidas, o aplicativo pode chamar GetLastError, que pode retornar um dos seguintes códigos de erro:
- ERROR_INTERNAL_ERROR. Ocorreu um erro inesperado na função .
- ERROR_INVALID_FLAGS. Os valores fornecidos para sinalizadores não eram válidos.
- ERROR_INVALID_PARAMETER. Qualquer um dos valores de parâmetro era inválido.
Comentários
Essa função afeta apenas a parte de substituição do usuário das configurações do calendário. Ele não define os padrões do sistema.
As informações do calendário sempre são passadas como uma cadeia de caracteres Unicode terminada em nulo na versão Unicode dessa função e como uma cadeia de caracteres ANSI terminada em nulo na versão ANSI. Nenhum inteiro é permitido por essa função. Todos os valores numéricos devem ser especificados como texto Unicode ou ANSI.
Quando a versão ANSI dessa função é usada com um identificador de localidade somente Unicode, a função pode ser bem-sucedida porque o sistema operacional usa a página de código do sistema. No entanto, os caracteres indefinidos na página de código do sistema aparecem na cadeia de caracteres como um ponto de interrogação (?).
CAL_ITWODIGITYEARMAX pode ser usado com qualquer calendário, mesmo que o calendário não tenha suporte para a localidade especificada. Para evitar complicações, o aplicativo deve chamar EnumCalendarInfo para garantir que o calendário tenha suporte para a localidade de interesse.
Observação
O cabeçalho winnls.h define SetCalendarInfo como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | winnls.h (inclua Windows.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |