Compartilhar via


Função VariantTimeToDosDateTime (oleauto.h)

Converte a representação variante de uma data e hora em valores de data e hora do MS-DOS.

Sintaxe

INT VariantTimeToDosDateTime(
  [in]  DOUBLE vtime,
  [out] USHORT *pwDosDate,
  [out] USHORT *pwDosTime
);

Parâmetros

[in] vtime

O tempo de variante a ser convertido.

[out] pwDosDate

Recebe a data do MS-DOS convertida.

[out] pwDosTime

Recebe a hora do MS-DOS convertida

Retornar valor

A função retorna TRUE em caso de êxito e FALSE caso contrário.

Comentários

Uma hora variante é armazenada como um valor real de 8 bytes (duplo), representando uma data entre 1º de janeiro de 100 e 31 de dezembro de 9999, inclusive. O valor 2.0 representa 1º de janeiro de 1900; 3.0 representa 2 de janeiro de 1900 e assim por diante. Adicionar 1 ao valor incrementa a data em um dia. A parte fracionária do valor representa a hora do dia. Portanto, 2,5 representa o meio-dia de 1º de janeiro de 1900; 3.25 representa 6:00 da manhã em 2 de janeiro de 1900 e assim por diante. Números negativos representam as datas anteriores a 30 de dezembro de 1899.

Para obter uma descrição dos formatos de data e hora do MS-DOS, consulte DosDateTimeToVariantTime.

A função VariantTimeToDosDateTime aceitará datas inválidas e tentará corrigi-las ao resolver para uma hora VARIANT. Por exemplo, uma data inválida, como 29/02/2001, resolve para 1/3/2001. Somente os dias são fixos, portanto, os valores de mês inválidos resultam em um erro retornado. Os dias estão marcados para estar entre 1 e 31. Dias e dias negativos maiores que 31 resultam em um erro. Um dia menor que 31, mas maior que o dia máximo nesse mês tem o dia promovido para o dia apropriado do mês seguinte. Um dia igual a zero é resolvido como o último dia do mês anterior. Por exemplo, uma data inválida, como 0/2/2001, resolve a 31/1/2001.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho oleauto.h
Biblioteca OleAut32.lib
DLL OleAut32.dll