Date of the last file change

Post Reply
Natter
Posts: 524
Joined: Mon May 14, 2007 9:49 am

Date of the last file change

Post by Natter »

Hi,

How to find out the date of the last file change ?
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Date of the last file change

Post by karinha »

Code: Select all

   cFILE := "C:\INST_NFE\MyProgam.exe"

   aDIR  := DIRECTORY( cFILE )

   dEXE  := aDIR[1] [3]

   dDateVersion := DTOC( dEXE )
 
João Santos - São Paulo - Brasil
Natter
Posts: 524
Joined: Mon May 14, 2007 9:49 am

Re: Date of the last file change

Post by Natter »

Thanks.
And how do I find out the date when the file was created and the date when the file was last opened ?
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Date of the last file change

Post by karinha »

If I understand correctly ... Create a database and save all the information on system usage in this database. Sorry if that's not it.

Regards.
João Santos - São Paulo - Brasil
User avatar
nageswaragunupudi
Posts: 8017
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Contact:

Re: Date of the last file change

Post by nageswaragunupudi »

Code: Select all

   local oFs, oFile, cFile

   oFs   := CreateObject( "Scripting.FileSystemObject" )
   cFile := "c:\fwh\samples\maria01.prg"
   if oFs:FileExists( cFile )
      oFile := oFs:GetFile( cFile )
      ? oFile:DateCreated, oFile:DateLastModified, oFile:DateLastAccessed
   else
      ? cFile + " does not exist"
   endif
 
https://docs.microsoft.com/en-us/office ... ect-object
Regards

G. N. Rao.
Hyderabad, India
Natter
Posts: 524
Joined: Mon May 14, 2007 9:49 am

Re: Date of the last file change

Post by Natter »

Thanks, Mr.Rao. This is what you need !
User avatar
MaxP
Posts: 85
Joined: Thu Jul 12, 2007 2:02 pm
Contact:

Re: Date of the last file change

Post by MaxP »

Another solution

Code: Select all

#include "Fivewin.ch"


FUNCTION MAIN()
        LOCAL   dDate
        
        dDate := FCREATEDATE( "C:\TEST.PDF" )
                
        MsgStop( dDate )
RETURN NIL


#pragma BEGINDUMP

#include <windows.h>
#include "hbapi.h"

HB_FUNC( FCREATEDATE )

{
        HANDLE          hFile  ;
        WIN32_FIND_DATA wfd ;
        SYSTEMTIME      st ;

        hFile = FindFirstFile( hb_parc( 1 ), &wfd ) ; 
        if ( hFile != INVALID_HANDLE_VALUE )  {
                FileTimeToSystemTime( &wfd.ftCreationTime, &st ) ;
        
                FindClose( hFile ) ;
        }   
        else  {
                st.wYear = 0 ;
                st.wMonth = 0 ;
                st.wDay = 0 ;
        }
        
        hb_retd( st.wYear, st.wMonth, st.wDay ) ;
}

#pragma ENDDUMP
regards
Massimo
User avatar
MarcoBoschi
Posts: 925
Joined: Thu Nov 17, 2005 11:08 am
Location: Padova - Italy
Contact:

Re: Date of the last file change

Post by MarcoBoschi »

Please,
the definition of oFile:DateLastAccessed?

How can I try this?
How do I open a file to find that modified parameter?

Many thanks
Marco
Marco Boschi
info@marcoboschi.it
User avatar
MaxP
Posts: 85
Joined: Thu Jul 12, 2007 2:02 pm
Contact:

Re: Date of the last file change

Post by MaxP »

Hi Marco,

I send you an example with LastAccess and LastWrite

Code: Select all

#include "Fivewin.ch"


FUNCTION MAIN()
        LOCAL   dDate
        
        dDate := FCREATEDATE( "C:\TEST.PDF" )        
                
        MsgStop( dDate )
        
        dDate := FLACCESSDATE( "C:\TEST.PDF" )        
                
        MsgStop( dDate )
        
        dDate := FLWRITEDATE( "C:\TEST.PDF" )        
                
        MsgStop( dDate )
RETURN NIL


#pragma BEGINDUMP

#include <windows.h>
#include "hbapi.h"

HB_FUNC( FCREATEDATE )

{
        HANDLE          hFile  ;
        WIN32_FIND_DATA wfd ;
        SYSTEMTIME      st ;

        hFile = FindFirstFile( hb_parc( 1 ), &wfd ) ; 
        if ( hFile != INVALID_HANDLE_VALUE )  {
                FileTimeToSystemTime( &wfd.ftCreationTime, &st ) ;
        
                FindClose( hFile ) ;
        }   
        else  {
                st.wYear = 0 ;
                st.wMonth = 0 ;
                st.wDay = 0 ;
        }
        
        hb_retd( st.wYear, st.wMonth, st.wDay ) ;
}

HB_FUNC( FLACCESSDATE )

{
        HANDLE          hFile  ;
        WIN32_FIND_DATA wfd ;
        SYSTEMTIME      st ;

        hFile = FindFirstFile( hb_parc( 1 ), &wfd ) ; 
        if ( hFile != INVALID_HANDLE_VALUE )  {
                FileTimeToSystemTime( &wfd.ftLastAccessTime, &st ) ;
        
                FindClose( hFile ) ;
        }   
        else  {
                st.wYear = 0 ;
                st.wMonth = 0 ;
                st.wDay = 0 ;
        }
        
        hb_retd( st.wYear, st.wMonth, st.wDay ) ;
}


HB_FUNC( FLWRITEDATE )

{
        HANDLE          hFile  ;
        WIN32_FIND_DATA wfd ;
        SYSTEMTIME      st ;

        hFile = FindFirstFile( hb_parc( 1 ), &wfd ) ; 
        if ( hFile != INVALID_HANDLE_VALUE )  {
                FileTimeToSystemTime( &wfd.ftLastWriteTime, &st ) ;
        
                FindClose( hFile ) ;
        }   
        else  {
                st.wYear = 0 ;
                st.wMonth = 0 ;
                st.wDay = 0 ;
        }
        
        hb_retd( st.wYear, st.wMonth, st.wDay ) ;
}

#pragma ENDDUMP
regards
Massimo
Post Reply