Dire depuis combien de temps tourne le pc(gettickcount - exemple d'utilisation)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 11 099 fois - Téléchargée 33 fois

Contenu du snippet

Bon, c'est un exemple tout con qui affiche dans une message box le temps depuis lequel le pc est allumé grave a la fonction gettickcount qui retourne le temps en ms, si vous ne comprenez pas, allez réviser vos maths :p
Il vous faut une forme, et un bouton, dans lequel vous mettrez ce code dans l'évènement onclick.

Source / Exemple :


procedure TForm1.Button1Click(Sender: TObject);
var jours, heures, minutes, secondes, millisecondes : integer;
begin

jours := gettickcount div (1000*60*60*24);
heures := (gettickcount - (jours*1000*60*60*24)) div (1000*60*60);
minutes := (gettickcount - (jours*1000*60*60*24) - (heures*1000*60*60)) div (1000*60);
secondes := (gettickcount - (jours*1000*60*60*24) - (heures*1000*60*60) - (minutes*1000*60)) div (1000);
millisecondes := (gettickcount - (jours*1000*60*60*24) - (heures*1000*60*60) - (minutes*1000*60) - (secondes*1000));// div (1);

MessageBoxA(0,Pchar(format('Pc lancé depuis: %d jours, %d heures, %d minutes, %d secondes et %d millisecondes', [jours, heures,minutes,secondes,millisecondes])),Pchar('Temps d''éxécution:'),0 + MB_ICONINFORMATION + 0);
end;

Conclusion :


Ca peut toujours servir a quelqu'un ;)

A voir également

Ajouter un commentaire Commentaires
cs_grandvizir Messages postés 1106 Date d'inscription samedi 8 novembre 2003 Statut Membre Dernière intervention 3 septembre 2006 22
9 avril 2005 à 11:36
Faut vraiment pas se fatiguer pour sortir GetTickCount...

Vos commentaires sont marrants, mais NTDLL n'est bien sûr pas toujours fourni. C'est peut-être idiot comme question, mais est-ce que NTdll est compatible avec 98 ? Au passage, si on ne fait pas n'importe quoi, W98 est très stable. C'est juste que les logiciels le rendent de moins en moins compatible.

Pour simple rappel, Win98 est un système d'exploitation. Japee semblait l'oublier. Et sinon, je n'ai pas compris ce que son code apporte de plus par rapport à celui sur lequel on cause.
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
1 avril 2005 à 18:36
Comme ça, on pourra faire une moyenne du temps que met Windows pour planter. On enverrai les données à Mister Billy pour qu' il implante dans une prochaine revision de Windows un système qui aviserai l' utilisateur lorsque l' on s' approcherai trop (dans le temps) d' un potentiel plantage!

J' ai même une idée pour le message (en Anglais biensûr, cela va de soi):
Caption := 'Hypotetic instable system';
Text := 'Incoming critical error: shutdown manually or Windows will restart automatically in ' + tempsRestant;
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
1 avril 2005 à 17:46
Pour rester dans le ton, et sans changer de sujet, j'aurais fait comme ça :

procedure WinPasPlanteDepuis;
var jours, heures, minutes, secondes, millisecondes: integer;
begin
Millisecondes := GetTickCount;
Secondes := Millisecondes div 1000;
Millisecondes := Secondes mod 1000;
Minutes := Secondes div 60;
Secondes := Secondes mod 60;
Heures := Minutes div 60;
Minutes := Minutes mod 60;
Jours := Heures div 24;
Heures := Heures mod 24;
MessageDlg(
Format('Ce PC n''a pas planté depuis: %d jours, %d heures, %d minutes, %d secondes et %d millisecondes, félicitations !',
[jours, heures, minutes, secondes, millisecondes]),
mtInformation,
[mbOK],
0);
end;

Bonne prog' :p
cs_MAURICIO Messages postés 2106 Date d'inscription mardi 10 décembre 2002 Statut Modérateur Dernière intervention 15 décembre 2014 5
31 mars 2005 à 18:58
GetTickCount est la mode cette année :)

Pour répondre à DelphiProg, Microsoft prépare une nouvelle version de Windows pour les avions (baptisé WinCrash) et un autre, pour diriger les centrales nucléaires (le nom temporaire est WinRadiate) !!!
Qui c' est qui veut prendre l' avion de Billou?
retaks666 Messages postés 286 Date d'inscription jeudi 2 janvier 2003 Statut Membre Dernière intervention 16 juillet 2007
30 mars 2005 à 14:09
Merci de vos commentaires, je vais faire une mise a jour a l'occase avec tous vos aids exemples!
Afficher les 10 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.