Freigeben über


DosDateTimeToVariantTime-Funktion (oleauto.h)

Konvertiert die MS-DOS-Darstellung der Zeit in die in einer Variante gespeicherte Datums- und Uhrzeitdarstellung.

Syntax

INT DosDateTimeToVariantTime(
  [in]  USHORT wDosDate,
  [in]  USHORT wDosTime,
  [out] DOUBLE *pvtime
);

Parameter

[in] wDosDate

Das zu konvertierende MS-DOS-Datum. Der gültige Bereich der MS-DOS-Daten ist der 1. Januar 1980 bis einschließlich 31. Dezember 2099.

[in] wDosTime

Die zu konvertierende MS-DOS-Zeit.

[out] pvtime

Die konvertierte Zeit.

Rückgabewert

Die Funktion gibt bei Erfolg TRUE und andernfalls FALSE zurück.

Hinweise

MS-DOS zeichnet Datums- und Uhrzeitangaben von Dateien als gepackte 16-Bit-Werte auf. Ein MS-DOS-Datum hat das folgende Format.

Bits Inhalte
0–4 Tag des Monats (1–31).
5–8 Monat (1 = Januar, 2 = Februar usw.).
9–15 Jahresoffset von 1980 (fügen Sie 1980 hinzu, um das tatsächliche Jahr zu erhalten).
 

Eine MS-DOS-Zeit hat das folgende Format.

Bits Inhalte
0–4 Zweite geteilt durch 2.
5–10 Minute (0–59).
11–15 Stunde (0 bis 23 auf einer 24-Stunden-Uhr).
 

Die DosDateTimeToVariantTime-Funktion akzeptiert ungültige Datumsangaben und versucht, diese beim Auflösen in eine VARIANT-Zeit zu beheben. Beispielsweise wird ein ungültiges Datum wie der 29.02.2001 in den 01.03.2001 aufgelöst. Es werden nur Tage behoben, sodass ungültige Monatswerte zu einem Fehler führen. Es wird überprüft, ob die Tage zwischen 1 und 31 liegen. Negative Tage und Tage, die größer als 31 sind, führen zu einem Fehler. Ein Tag, der kleiner als 31 ist, aber größer als der maximale Tag in diesem Monat ist, wird auf den entsprechenden Tag des nächsten Monats heraufgestuft. Ein Tag gleich 0 (null) wird als letzter Tag des vorherigen Monats aufgelöst. Beispielsweise wird ein ungültiges Datum wie der 0.02.2001 in den 31.01.2001 aufgelöst.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile oleauto.h
Bibliothek OleAut32.lib
DLL OleAut32.dll