Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Modificar la fecha de creación de un archivo

23 views
Skip to first unread message

Bernard

unread,
Oct 29, 1999, 3:00:00 AM10/29/99
to
Pues eso, alguien sabe cómo modificar la fecha de creación de un archivo con
VB?
Muchas gracias!!!

Saludos desde San Sebastián
Bernard
ber...@NOSPAMdiariovasco.com
Quitar NOSPAM

Norman A. Armas

unread,
Oct 29, 1999, 3:00:00 AM10/29/99
to
Te estoy enviando codigo de ejemplo lo unico que necesitas es crear una
forma y poner este codigo ademas de poner un CommonDialog Control y le pones
por nombre "CDBox"

Te recomiendo que pases por esta pagina y bajes el "APIGuide" que trae
muchisimos ejemplos de como trabajar con las API (este ejemplo es de ese
programa)
http://kpdweb.cjb.net/

Saludos

Norman

'This project needs a Common Dialog box, named CDBox.
' (To add the Common Dialog Box to your tools menu, go to
Project->Components (or press CTRL-T)
' and select Microsoft Common Dialog control)
Private Type FILETIME
dwLowDateTime As Long
dwHighDateTime As Long
End Type
Private Type SYSTEMTIME
wYear As Integer
wMonth As Integer
wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer
wSecond As Integer
wMilliseconds As Integer
End Type
Private Const GENERIC_WRITE = &H40000000
Private Const OPEN_EXISTING = 3
Private Const FILE_SHARE_READ = &H1
Private Const FILE_SHARE_WRITE = &H2
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA"
(ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal
dwShareMode As Long, ByVal lpSecurityAttributes As Long, ByVal
dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal
hTemplateFile As Long) As Long
Private Declare Function SetFileTime Lib "kernel32" (ByVal hFile As Long,
lpCreationTime As FILETIME, lpLastAccessTime As FILETIME, lpLastWriteTime As
FILETIME) As Long
Private Declare Function SystemTimeToFileTime Lib "kernel32" (lpSystemTime
As SYSTEMTIME, lpFileTime As FILETIME) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long)
As Long
Private Declare Function LocalFileTimeToFileTime Lib "kernel32"
(lpLocalFileTime As FILETIME, lpFileTime As FILETIME) As Long
Private Sub Form_Load()
'KPD-Team 1998
'URL: http://kpdweb.cjb.net/
'KPD_...@Hotmail.com
Dim m_Date As Date, lngHandle As Long
Dim udtFileTime As FILETIME
Dim udtLocalTime As FILETIME
Dim udtSystemTime As SYSTEMTIME
m_Date = Format(Now, "DD-MM-YY")

'Set the dialog's title
CDBox.DialogTitle = "Choose a file ..."
'Set the dialog's filter
CDBox.Filter = "All Files (*.*)|*.*"
'Show the 'Open File'-dialog
CDBox.ShowOpen

udtSystemTime.wYear = Year(m_Date)
udtSystemTime.wMonth = Month(m_Date)
udtSystemTime.wDay = Day(m_Date)
udtSystemTime.wDayOfWeek = WeekDay(m_Date) - 1
udtSystemTime.wHour = Hour(m_Date)
udtSystemTime.wSecond = Second(m_Date)
udtSystemTime.wMilliseconds = 0

' convert system time to local time
SystemTimeToFileTime udtSystemTime, udtLocalTime
' convert local time to GMT
LocalFileTimeToFileTime udtLocalTime, udtFileTime
' open the file to get the filehandle
lngHandle = CreateFile(CDBox.Filename, GENERIC_WRITE, FILE_SHARE_READ Or
FILE_SHARE_WRITE, ByVal 0&, OPEN_EXISTING, 0, 0)
' change date/time property of the file
SetFileTime lngHandle, udtFileTime, udtFileTime, udtFileTime
' close the handle
CloseHandle lngHandle
MsgBox "The date of the file '" + CDBox.Filename + "' has been changed
to" + Str$(m_Date), vbInformation + vbOKOnly, App.Title
End Sub

--
===========================
Saludos

Norman ;-)

Bernard

unread,
Oct 30, 1999, 3:00:00 AM10/30/99
to
Muchas gracias Norman, tu ejemplo me ha servido para conocer algunas
funciones de fecha, pero...
Lo que quiero exactamente es modificar la fecha de creación del archivo, no
la de modificación. Exactamente lo que quiero es copiar la fecha de
modificación en la de creación. No es por capricho, es que tengo un software
para mac que ordena por fecha de creación y no lo puedo cambiar, y al copiar
unos archivos con Robocopy, me respeta la fecha de modificación, pero NT le
pone la fecha de creación nueva. Esto me desordena todos los archivos en
este programa para Mac, y lo hace completamente inútil, ya que no hay quien
se aclare. Una vez más muchas gracias.
--

Saludos desde San Sebastián
Bernard
ber...@NOSPAMdiariovasco.com
Quitar NOSPAM

Norman A. Armas <nor...@apolloships.com> escribió en el mensaje de noticias
#Jz10ygI$GA.249@cppssbbsa04...
> Adjunto ejemplo con el uso de API.
>
> --
> ============
>
> Saludos...
>
> Norman ;-)
>
>
>
>
>

Bernard

unread,
Oct 30, 1999, 3:00:00 AM10/30/99
to
Muchas gracias Norman

--
Saludos desde San Sebastián
Bernard
ber...@NOSPAMdiariovasco.com
Quitar NOSPAM

Norman A. Armas <nor...@apolloships.com> escribió en el mensaje de noticias

uBhQCrnI$GA.257@cppssbbsa04...

0 new messages