[gettickcount] déterminer depuis combien de temps windows n'a pas planté

Soyez le premier à donner votre avis sur cette source.

Vue 11 138 fois - Téléchargée 272 fois

Description

Bon, Windows est d'une stabilité exemplaire depuis win2k, tout le monde le sait.

Donc ce code n'est destiné qu'aux très vieilles versions, sorties il y a très très longtemps, et forcément obsolètes, hein ?

Bah, une période que les moins de 5 ans ne peuvent pas connaître...

Il faudra donc adapter le commentaire selon la version de votre OS.

J'aurais pu ajouter la détermination dans le code de l'OS utilisé, avec des commentaires plus adaptés, en fonction de...
Je n'ai pas eu le temps.
Mais si le coeur vous en dit, il y a de très bonnes sources à ce sujet sur le site.

Fais pas la gueule, Billou, it's just a joke, vieille tradition française du 1er avril.

Ah, ce source m'a été gravement inspiré par retak666, ici :

http://www.delphifr.com/code.aspx?ID=30415

J'y avais ajouté un commentaire sur ma manière de procéder, ce qui m'a donné l'idée de ce post approprié à la date d'aujourd'hui, me semble-t'il ;)

Source / Exemple :


procedure FmtMillisec(var Days, Hours, Minutes, Seconds, Milliseconds: Integer);
begin
  Seconds      := Milliseconds div 1000;
  Milliseconds := Milliseconds mod 1000;
  Minutes      := Seconds div 60;
  Seconds      := Seconds mod 60;
  Hours        := Minutes div 60;
  Minutes      := Minutes mod 60;
  Days         := Hours div 24;
  Hours        := Hours mod 24;
end;

function NotBlueScreenOfTheDeathFrom: string;
const
  S1 = 'Ce PC n''a pas planté depuis :';
  Br = #10#13 + 'Diagnostic : ';
  Comment: array[0..5] of string = (
    'pour l''instant tout va bien.',
    'hé, pas mal, c''est certainement votre jour de chance.',
    'toutes nos félicitations, pourvu que ça dure...',
    'veuillez réinstaller Windows tout de suite - Bill Gates.',
    'erreur probable dans les calculs.',
    'vous essayez de tricher, mais ça ne marche pas !');
  MINUTE = 60000;
  HEURE  = 3600000;
var
  Jours, Heures, Minutes, Secondes, Millisecondes: Integer;
  S2: string;
begin
  Millisecondes := GetTickCount;
  case Millisecondes of
    0 .. 10 * MINUTE -1         : S2 := Comment[0];  //   < 10 minutes
    10 * MINUTE .. 2 * HEURE -1 : S2 := Comment[1];  //   < 2 heures
    2 * HEURE .. 5 * HEURE -1   : S2 := Comment[2];  //   < 5 heures
    5 * HEURE .. 10 * HEURE -1  : S2 := Comment[3];  //   < 10 heures
    10 * HEURE .. 20 * HEURE -1 : S2 := Comment[4];  //   < 20 heures
    else
      S2 := Comment[5];   // 20 heures et plus
  end;
  FmtMillisec(Jours, Heures, Minutes, Secondes, Millisecondes);
  Result := Format(
    '%s %d jours, %d heures, %d minutes, %d secondes et %d ms.%s %s',
    [S1, Jours, Heures, Minutes, Secondes, Millisecondes, Br, S2]);
end;

procedure TForm1.btnTestClick(Sender: TObject);
begin
  MessageDlg(NotBlueScreenOfTheDeathFrom, mtInformation, [mbOK], 0);
end;

Codes Sources

A voir également

Ajouter un commentaire Commentaires
jihelb Messages postés 49 Date d'inscription lundi 27 janvier 2003 Statut Membre Dernière intervention 24 mars 2017
4 avril 2005 à 14:51
Belle preuve d'humour Ken@vo.
Bravo !!!
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
4 avril 2005 à 13:23
Kenavo, ton clavier ne serait-il pas de marque la Microsoft comme ça para hasard??? Si oui, tu cumule les riques!!!
Windows+Clavier Microsoft = 2 fois plus de chance de plantage :)
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
4 avril 2005 à 00:37
Lol, Kenavo ! :o)

Tu nous as fait peur, un moment...
cs_Kenavo Messages postés 702 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 1 octobre 2009 5
3 avril 2005 à 11:33
al

C'est bien ! Non ?

Ken@vo
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
2 avril 2005 à 21:58
En fait, Delphiprog, je pense que c'est Kenavo qui a eu un bug quand il a réalisé que son ordi tournait depuis au moins 10 minutes sans rebooter, mdr ;)

Il n'a même pas eu le temps de finir sa phrase, le pauvre...

Je suis quand même un peu inquiet pour lui :(

Quelqu'un a des nouvelles rassurantes à son sujet ?
Afficher les 9 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.