Visualizzazione dei risultati da 1 a 3 su 3

Discussione: [C++] GetFileTime

  1. #1

    [C++/API] GetFileTime

    Ciao...

    Ce questa API di windows che restituisce la data di creazione, la data del ultimo accesso e la data di scrittura di un file..

    Il mio problema e che non riesco a capire come tirar fuori queste informazione dalla veriabile di tipo _FILETIME che quet Api restituisce..

    questo e il prototipo:
    codice:
    BOOL GetFileTime(
    
        HANDLE hFile,	// identifies the file 
        LPFILETIME lpCreationTime,	// address of creation time 
        LPFILETIME lpLastAccessTime,	// address of last access time  
        LPFILETIME lpLastWriteTime 	// address of last write time 
       );
    e questa e la struttura del tipo _FILETIME:
    codice:
    typedef struct _FILETIME { // ft  
        DWORD dwLowDateTime; 
        DWORD dwHighDateTime; 
    } FILETIME;
    io gli passo lìhWnd del file che ho aperto con 'FileOpen' e poi creo 3 variabili pontatori di tipo _FILETIME..

    _FILETIME *a,*b,*c;

    l'API mi funziona senza errori e le variabili a,b,c mi puntano a dei valori divisi in Parte alta (High) e parte bassa (Low) pero come mi tiro fuori la data e l'ora da questo tipo di varibile?

    c'e una macro che mi converte nel formato gg/mm/aaa hh-mm-ss

    Grazie..

    Ciao...
    Il linguaggio migliore e quello che ti crei da solo...

  2. #2
    Ciao akira86 ...


    allora quella struttura ti restituisce il valore della data in secondi , poi ti basta fare la conversione in giorni ed hai quello che ti serve. Es

    Ammettiamo che il file sia statto modificato il 15/07/04

    otterrai il seguente valore : 1242180 s -> diviso 3600 ( secondi in un ora ) = 354,05 -> diviso 24 ( ore in un giorno ) = 14,37 -> Circa 14 gg poi ( mi riferisco alla data del messaggio ) oggi è 29 , quindi

    29 - 14 = 15 giorni fà

    ovviamente se il numero che ottieni è maggiore di 30 o 31 il file è stato modificato il mese scorso e ti trovi sempre con questa operazione la data , poi se il numero è maggiore di 365 è stato modificato l'anno scorso.

    Se hai problemi o qualcosa da chiarire chiedi pure
    :: - ::..:: D :: J :: ^ :: H :: O :: K :: E ::..:: - ::

  3. #3
    Grazie Mille della risposta...

    Ora e Tutto chiaro..

    Ciao e Grazie Ancora....
    Il linguaggio migliore e quello che ti crei da solo...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.