tyomitch писал(а):FileDateTime
brigval писал(а):tyomitch писал(а):FileDateTime
Но дело в том, что и в свойствах файла, просмотренных средствами Windows дата создания файла, в описанном случае, не изменяется.
!Viper! писал(а):brigval писал(а):tyomitch писал(а):FileDateTime
Но дело в том, что и в свойствах файла, просмотренных средствами Windows дата создания файла, в описанном случае, не изменяется.
собственн при пересоздании файла это логично.
!Viper! писал(а):Что-то я окончательно запутался в том, что же нужно автору... При создании нового файла (пусть даже и под старым именем) все три даты будут новыми (опять же если не менять их через SetFileTime).
Допустим, я создал новый PDF-файл и теперь сохраняю его Save As... Для того, чтоб не вводить имя сохраняемого файла, указываю на существующий файл созданный ранее. Adobe Acrobat спрашивает "Перезаписать?". Я отвечаю "Да". Старый файл пропадает, а новый сохраняется под старым именем и с датой создания старого, как бы уже и не существующего файла.
Получается, что содержание файла (информация в нем) обновлено полностью, но атрибут "Created" (физическая величина) не изменился. Вот что я имел ввиду.
Да, операции с файлами происходят на сервере и атрибуты времени не зависят от времени на локальных компьютерах.
Konst_One писал(а):Похоже, что тебе придется все-таки использоват дату модификации файла, как тебе GSerg предложил.
Да ну?Программно момент перезаписи не отследить.
Twister писал(а):Да блин, прежде чем ответить раз пять перечитал, чтоб понять что нужно автору... Ну если меняют основное содержимое, тогда алгоритм crc32 автору в руки и пусть сравнивает блоки файла...
brigval писал(а):Далее. При открытии перезаписанного PDF-файла в его свойствах File>Properties в Created (так и называется) всегда отображается именно время перезаписи! Уже не важно серверное или локальное. То есть, видимо, вопрос можно свести к следующему: как считать это свойство PDF-файла не открывая его?
Супер! Опять понеслось...как считать это свойство PDF-файла не открывая его?
как считать это свойство PDF-файла не открывая его?
Даром. Оно там в конце файла лежит, открытым текстом.
Но таки-да, придётся открыть
Function DatePDF(sFullFileNamePDF As String) As String
Dim fh As Integer
Dim sLine As String
Dim FindText As String
Dim p As Long
On Error GoTo 1
FindText = "/CreationDate(D:"
fh = FreeFile
Open sFullFileNamePDF For Input As #fh
Do While Not EOF(fh)
Input #fh, sLine
p = InStr(sLine, FindText)
If p Then
sLine = Mid(sLine, p + Len(FindText), 8)
Exit Do
End If
sLine = NS
Loop
Close #fh
If Len(sLine) = 8 Then
DatePDF = Mid$(sLine, 7, 2) & "." & _
Mid$(sLine, 5, 2) & "." & _
Mid$(sLine,1, 4)
End If
Exit Function
1:
MsgBox "DatePDF: " & Err.Description
End Function
Сейчас этот форум просматривают: SemrushBot и гости: 102