DosDateTimeToVariantTime 函式 (oleauto.h)
將時間的 MS-DOS 表示轉換為儲存在變體中的日期和時間表示法。
語法
INT DosDateTimeToVariantTime(
[in] USHORT wDosDate,
[in] USHORT wDosTime,
[out] DOUBLE *pvtime
);
參數
[in] wDosDate
要轉換的 MS-DOS 日期。 MS-DOS 日期的有效範圍包括 1980 年 1 月 1 日到 2099 年 12 月 31 日。
[in] wDosTime
要轉換的 MS-DOS 時間。
[out] pvtime
已轉換的時間。
傳回值
函式會在成功時傳回 TRUE,否則傳回 FALSE。
備註
MS-DOS 會將檔案日期和時間記錄為已封裝 16 位值。 MS-DOS 日期的格式如下。
Bits | 目錄 |
---|---|
0–4 | (1-31) 月份的日期。 |
5–8 | 月份 (1 = 1 月,2 = 2 月,依此類) 。 |
9–15 | 從 1980 年位移 (新增 1980,以取得實際年份) 。 |
MS-DOS 時間的格式如下。
Bits | 目錄 |
---|---|
0–4 | 第二個除以 2。 |
5–10 | 分鐘 (0–59) 。 |
11–15 | 24 小時制) 的小時 (0– 23。 |
DosDateTimeToVariantTime 函式會接受無效的日期,並在解析為 VARIANT 時間時嘗試修正這些日期。 例如,2001/29/29 之類的無效日期會解析為 2001/3/1。 只有固定天數,因此無效的月份值會導致傳回錯誤。 系統會檢查天數介於 1 到 31 之間。 負天數和天數大於 31 會導致錯誤。 一天小於 31,但大於該月份中的最大日期,日期會升階為下個月的適當日期。 等於零的日期會解析為上個月的最後一天。 例如,2001/2/0 之類的無效日期會解析為 2001/1/31。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | oleauto.h |
程式庫 | OleAut32.lib |
Dll | OleAut32.dll |