[C-windows]Tempo di avvio sistema

di il
2 risposte

[C-windows]Tempo di avvio sistema

Buongiorno, dovrei fare un programmino (dovrebbero essere non più di 10 righe) che mi restituisca il tempo da quando è stato avviato il sitema...

un idea grezza sarebbe quella di fare un cronometro e lasciare il programma in background per tutto il tempo, ma è veramente brutto

Un altra idea era quella di usare le win api per "prendere" in qualsiasi momento il tempo...

Ho googlato un po' e ho trovato questa bella funzioncina: GetTickCount64 (vedi: )

Il mio vero problema è che non ho mai utilizzato direttamente queste funzioni e quindi a dir la verità non ho idea da dove iniziare

Ad intuito direi che devo includere windows.h , ma poi? Faccio il classico int main(){...} ??

2 Risposte

  • Re: [C-windows]Tempo di avvio sistema

    Si direi di si. Ma GetTickCount64 funziona solo da vista in poi, quindi ti scordi WinXP e inferiori. Se il sistema non rimane accesso per più di circa 50giorni di fila puoi usare GetTickCount e basta supportato da tutti i sistemi.
  • Re: [C-windows]Tempo di avvio sistema

    Il programmino sarebbe per win7 64bit...

    Comuque l'ho fatto... era veramente demeziale... se a qualcuno può servire il codice:

    #include <iostream>
    #include <Windows.h>
    
    using namespace std;
    
    int main()
    {
      unsigned long long ms;
      float exp=0.0000167,ris;  //exp è il fattore per convertire da millisecondi a minuti. In forma scientifica sarebbe 1,67×10^(-5)
      ms=GetTickCount();  //restituisce il risultato in millisecondi
      ris=ms*exp; 
      cout<<"Il sistema e' stato avviato da "<<ris<< " minuti"<<endl;
      return 0;
    }
Devi accedere o registrarti per scrivere nel forum
2 risposte