↑  ←  Описание функции


_Date_Time_FileTimeToDOSDateTime

Конвертирует значение MS-DOS даты и времени в файловое время

#include <Date.au3>
_Date_Time_FileTimeToDOSDateTime($pFileTime)

Параметры

$pFileTime Указатель на структуру $tagFILETIME, содержащую файловое время для перевода в формат MS-DOS

Возвращаемое значение

Возвращает массив следующего формата:
        [0] - MS-DOS дата, упакованная следующим образом:
            Биты 0- 4 день месяца (1–31)
            Биты 5- 8 месяц (1 = январь, 2 = февраль и так далее)
            Биты 9-15 год со смещением от 1980 (для получения фактического года нужно добавить 1980)
        [1] - MS-DOS время, упакованное следующим образом:
            Биты 0- 4 секунда, деленная на 2
            Биты 5-10 минута (0–59)
            Биты 11-15 час (0–23 в 24-часовом формате)

См. также

_Date_Time_FileTimeToLocalFileTime, _Date_Time_FileTimeToSystemTime, _Date_Time_DOSDateTimeToFileTime, $tagFILETIME

Пример

#include <GUIConstantsEx.au3>
#include <Date.au3>
#include <WindowsConstants.au3>

Global $iMemo

_Main()

Func _Main()
    Local $hGUI, $tFile, $aDOS

    ; Создаёт GUI
    $hGUI = GUICreate("Время", 400, 300)
    $iMemo = GUICtrlCreateEdit("", 2, 2, 396, 296, $WS_VSCROLL)
    GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
    GUISetState()

    ; Кодирует файловое время
    $tFile = _Date_Time_EncodeFileTime(@MON, @MDAY, @YEAR, @HOUR, @MIN, @SEC)
    $aDOS  = _Date_Time_FileTimeToDosDateTime(DllStructGetPtr($tFile))
    MemoWrite("DOS дата  .: 0x" & Hex($aDOS[0], 4))
    MemoWrite("DOS время .: 0x" & Hex($aDOS[1], 4))

    ; Цикл выполняется, пока окно не будет закрыто
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

EndFunc   ;==>_Main

; Записывает строку в элемент для заметок
Func MemoWrite($sMessage)
    GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc   ;==>MemoWrite