Compartilhar via


Função SHFormatDateTimeA (shlwapi.h)

[SHFormatDateTime está disponível para uso nos sistemas operacionais especificados na seção Requisitos. Ele pode estar alterado ou indisponível em versões subsequentes.]

Produz uma representação de cadeia de caracteres de um tempo especificado como uma estrutura de FILETIME.

Sintaxe

int SHFormatDateTimeA(
  [in]                const FILETIME *pft,
  [in, out, optional] DWORD          *pdwFlags,
  [out]               LPSTR          pszBuf,
                      UINT           cchBuf
);

Parâmetros

[in] pft

Tipo: const FILETIME UNALIGNED*

Um ponteiro para a estrutura FILETIME cujo tempo deve ser convertido em uma cadeia de caracteres.

[in, out, optional] pdwFlags

Tipo: DWORD*

Um ponteiro para um valor DWORD que contém sinalizadores bit a bit que especificam o formato de data e hora.

Ao chamar a função, você pode combinar zero ou mais dos sinalizadores a seguir, com exceções, conforme observado. Você também pode definir esse parâmetro para NULL, nesse caso, a função pressupõe que o sinalizador de FDTF_DEFAULT está definido.

FDTF_SHORTTIME (0x00000001)

0x00000001. Formata a hora do dia conforme especificado pelo aplicativo Opções Regionais e de Idioma no Painel de Controle, mas sem segundos. Esse sinalizador não pode ser combinado com FDTF_LONGTIME.

O curto tempo foi formatado com êxito.

FDTF_SHORTDATE (0x00000002)

0x00000002. Formata a data conforme especificado pelo formato de data curta no aplicativo Opções Regionais e de Idioma no Painel de Controle. Esse sinalizador não pode ser combinado com FDTF_LONGDATE.

A data curta foi formatada com êxito.

FDTF_DEFAULT

Equivalente a FDTF_SHORTDATE | FDTF_SHORTTIME.

FDTF_LONGDATE (0x00000004)

0x00000004. Formata a data conforme especificado pelo formato de data longa no aplicativo Opções Regionais e de Idioma no Painel de Controle. Esse sinalizador não pode ser combinado com FDTF_SHORTDATE.

A data longa foi formatada com êxito.

FDTF_LONGTIME (0x00000008)

0x00000008. Formata a hora do dia conforme especificado pelo aplicativo Opções Regionais e de Idioma no Painel de Controle, incluindo segundos. Esse sinalizador não pode ser combinado com FDTF_SHORTTIME.

O longo tempo foi formatado com êxito.

FDTF_RELATIVE (0x00000010)

0x00000010. Se o sinalizador FDTF_LONGDATE estiver definido e a data na estrutura FILETIME for a mesma data em que SHFormatDateTime for chamado, o dia da semana (se presente) será alterado para "Hoje". Se a data na estrutura for o dia anterior, o dia da semana (se presente) será alterado para "Ontem".

A notação relativa foi usada para a data.

FDTF_LTRDATE (0x00000100)

0x00000100. Adiciona marcas para o layout de leitura da esquerda para a direita. Esse sinalizador não pode ser combinado com FDTF_RTLDATE.

FDTF_RTLDATE (0x00000200)

0x00000200. Adiciona marcas para o layout de leitura da direita para a esquerda. Esse sinalizador não pode ser combinado com FDTF_LTRDATE.

FDTF_NOAUTOREADINGORDER (0x00000400)

0x00000400. Nenhuma marca de ordem de leitura é inserida. Normalmente, na ausência do sinalizador FDTF_LTRDATE ou FDTF_RTLDATE, SHFormatDateTime determina a ordem de leitura da localidade padrão do usuário, insere marcas de ordem de leitura e atualiza o pdwFlags valor de saída adequadamente. Esse sinalizador impede que esse processo ocorra. Ele é usado mais comumente por chamadores herdados de SHFormatDateTime. Esse sinalizador não pode ser combinado com FDTF_RTLDATE ou FDTF_LTRDATE.

Windows Server 2003 e Windows XP: Esse valor não está disponível.

Quando a função retorna, o DWORD valor apontado por esse parâmetro pode conter zero ou mais dos sinalizadores a seguir.

[out] pszBuf

Tipo: LPTSTR

Um ponteiro para um buffer que recebe a data e a hora formatadas. O buffer deve ser grande o suficiente para conter o número de caracteres TCHAR especificados pelo parâmetro cchBuf, incluindo um caractere nulo de terminação.

cchBuf

Tipo: UINT

O número de TCHARs que podem ser contidos pelo buffer apontado por pszBuf.

Valor de retorno

Tipo: int

Retorna o número de TCHARs gravados no buffer, incluindo o caractere nulo de encerramento. Em caso de falha, esse valor é 0.

Observações

Nota

O cabeçalho shlwapi.h define SHFormatDateTime como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows XP [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows Server 2003 [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho shlwapi.h
biblioteca Shlwapi.lib
de DLL Shlwapi.dll (versão 5.0 ou posterior)

Consulte também

GetDateFormat

GetTimeFormat