<Return[F]><Top>

FileTimeToDosDateTime

Declare Function Api_FileTimeToDosDateTime& Lib "kernel32" Alias "FileTimeToDosDateTime" (lpFileTime As FILETIME, ByVal lpFatDate&, ByVal lpFatTime&)

Declare Function FileTimeToDosDateTime Lib "kernel32" Alias "FileTimeToDosDateTime" (lpFileTime As FILETIME, ByVal lpFatDate As Long, ByVal lpFatTime As Long) As Long

64 ビット形式のファイル時刻を、MS-DOS 形式の日時へ変換する。

パラメータ
lpFileTime
    64 ビット形式のファイル時刻を保持している、1 個の 構造体へのポインタを指定する。
lpFatDate
    1 個の変数へのポインタを指定します。関数から制御が返ると、この変数に、MS-DOS の日付が格納されます。

    各ビットの内容は次のとおりである。

    ビット      

内容                                                                                                                                      

    0-4

年月日の日(1〜31)。

    5-8

年月日の月(1 = 1 月、2 = 2 月、以下同様)。

    9-15

年月日の年。ただし、1980 年からの経過年数で示される。これらのビットが表す値に 1980 を足すと、実際の年が得られる。

lpFatTime
    1 個の変数へのポインタを指定します。関数から制御が返ると、この変数に、MS-DOS の時刻が格納される。

    各ビットの内容は次のとおりである。

    ビット      

内容                                                                                                                                      

    0-4

時分秒の秒を 2 で割った値である(0〜29)。

    5-10

時分秒の分(0〜59)。

    11-15

時分秒の時(24 時間制で 0〜23)。

 

戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。拡張エラー情報を取得するには、 関数を使う。

解説
    MS-DOS の日付形式が表現できるのは、1980 年 1 月 1 日から 2107 年 12 月 31 日までの日付だけである。lpFileTime パラメータで

    指定したファイル時刻がこの範囲にとどまっていない場合、変換は失敗する。