![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Как установить время создания файла с точностью до миллисекунды? |
|
[решено] Как установить время создания файла с точностью до миллисекунды?
|
Новый участник Сообщения: 9 |
Добрый день!
Для чтения/установки времени создания файла/папки есть функции FileGetTime и FileSetTime, они "работают" с точностью до секунд. Подскажите, пожалуйста, есть ли возможность узнать/установить время создания с точностью до миллисекунды? |
|
Отправлено: 19:40, 12-05-2011 |
Пользователь Сообщения: 86
|
Профиль | Отправить PM | Цитировать эта информацыя не хронится. то есть нельзя.
|
Отправлено: 11:55, 13-05-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 9
|
Профиль | Отправить PM | Цитировать Эта информация хранится, это точно. По крайней мере для файловой системы NTFS.
Это можно видеть (и изменять) в последней версии Far Manager. Так же есть специальная консольная утилита, которая позволяет это делать. Раз это возможно для других программ, то наверное как-то можно сделать и средствами AutoIt. Вопрос - как? |
Отправлено: 14:15, 13-05-2011 | #3 |
![]() Старожил Сообщения: 206
|
Профиль | Отправить PM | Цитировать _Date_Time_SetFileTime()
|
Отправлено: 00:10, 14-05-2011 | #4 |
Новый участник Сообщения: 9
|
Профиль | Отправить PM | Цитировать Yashied
Я как раз копал в этом направлении. Что у меня получилось: Установить время создания файла с точностью до миллисекунды (для файловой системы NTFS): #include <Date.au3> _Main() Func _Main() Local $hFile, $tFile, $aTime ; открываем существующий или создаем новый тестовый файл $hFile = _WinAPI_CreateFile(@ScriptDir & "\myTestFile.txt", 3) if $hFile = 0 then _WinAPI_ShowError("Unable to create file") ; устанавливаем время с точностью до миллисекунды (для файловой системы NTFS) $tFile = _Date_Time_EncodeFileTime(@MON, @MDAY, @YEAR, @HOUR, @MIN, @SEC, 123) $pFile = DllStructGetPtr($tFile) _Date_Time_SetFileTime($hFile, $pFile) _WinAPI_CloseHandle($hFile) EndFunc ;==>_Main #include <Date.au3> _Main() Func _Main() Local $hFile, $tFile, $aTime, $aDate, $val ; открываем существующий тестовый файл $hFile = _WinAPI_CreateFile(@ScriptDir & "\myTestFile.txt", 2) if $hFile = 0 then _WinAPI_ShowError("Unable to create file") ; читаем время создания, модификации и последнего доступа к файлу $aTime = _Date_Time_GetFileTime($hFile) _WinAPI_CloseHandle($hFile) ; выводим время Создания файла с точностью до миллисекунды $aDate = _Date_Time_FileTimeToArray($aTime[0]) $val = StringFormat("%04d/%02d/%02d %02d:%02d:%02d,%03d", $aDate[2], $aDate[1], $aDate[0], $aDate[3], $aDate[4], $aDate[5], $aDate[6]) MsgBox (0, "", "Created ..: " & $val) EndFunc ;==>_Main Подскажите, пожалуйста, как можно сделать то же самое для ПАПКИ? |
|
Отправлено: 20:15, 14-05-2011 | #5 |
![]() Старожил Сообщения: 206
|
Профиль | Отправить PM | Цитировать Папки нужно открывать с флагом FILE_FLAG_BACKUP_SEMANTICS, но _WinAPI_CreateFile() его не поддерживает. Используйте _WinAPI_CreateFileEx() из библиотеки WinAPIEx.au3:
Для папок: $hFile = _WinAPI_CreateFileEx(@ScriptDir & '\myTestFolder', $OPEN_EXISTING, 0, 0, $FILE_FLAG_BACKUP_SEMANTICS) |
Последний раз редактировалось Yashied, 15-05-2011 в 02:32. Отправлено: 22:38, 14-05-2011 | #6 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Любой язык - [решено] Системное время с точностью до секунд из bat | BugSoft | Скриптовые языки администрирования Windows | 1 | 15-12-2008 16:55 | |
ALTLinux - Как наложить на JPG текст (дата создания файла) | user51 | Общий по Linux | 6 | 30-06-2008 15:37 | |
Время создания файла | Alexey1974 | Microsoft Windows NT/2000/2003 | 0 | 09-04-2007 20:28 | |
Как взять дату создания файла из перла? | radioamator | Вебмастеру | 2 | 30-04-2004 11:14 | |
Как изменить время создания папки | bilytur | Хочу все знать | 20 | 19-09-2003 16:11 |
|