IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

Durée fonctionnement programme


Sujet :

Langage Delphi

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur indépendant
    Inscrit en
    Mai 2002
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur indépendant

    Informations forums :
    Inscription : Mai 2002
    Messages : 231
    Points : 116
    Points
    116
    Par défaut Durée fonctionnement programme
    Bonjour,

    Comment connaitre l'heure de démarrage d'un programme et l'heure de son arret pour mettre en place un suivi du temps d'utilisation ?

    Philippe

  2. #2
    Membre du Club
    Inscrit en
    Août 2005
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 62
    Points : 63
    Points
    63
    Par défaut
    tu fait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    var debu, deff :TTime;
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    debut := now();
    end;
    //**********
    procedure TForm1.FormDestroy(Sender: TObject);
    begin
    deff := now() - debut;
    //puis sauvegarde  deff dans fichier..
    end;
    je crois que cela va t'aider

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur indépendant
    Inscrit en
    Mai 2002
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur indépendant

    Informations forums :
    Inscription : Mai 2002
    Messages : 231
    Points : 116
    Points
    116
    Par défaut il s'agit d'un programme externe
    Bonjour,

    merci pour ta réponse mais il s'agit de suivre le temps d'utilisation d'un programme externe ( dont je n'ai le source ) de jeux pour suivre l'utilisation par un enfant .

    Philippe

  4. #4
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 111
    Points : 119
    Points
    119
    Par défaut
    Pour voir le demarrage, a mon avis la meilleure solution (barbare) est de fair un programme delphi qui execute l'autre programme. Une bête interface avec juste un bouton pour le demarrer. Comme ca, tu peut voir l'heure du demarrage.

    L'instruction pour executer un programme est shellExecute(...)

    Pour voir quand il s'arrete, tu peut toujours (je suis bourrin de bon matin) avoir ton programme a toi qui teste si l'autre est en train de s'executer et quand l'autre est terminé, il calcule la difference de temps.

    Bon, c'est juste pour suggerer des pistes...
    Un petit nuage blanc dans un ciel tout bleu, c'est le paradis. Un petit message blanc dans un ecran tout bleu, c'est l'enfer.

  5. #5
    Membre expert
    Avatar de Bestiol
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 515
    Points : 3 894
    Points
    3 894
    Par défaut
    Si tu utilises un launcher comme le propose Qapoka, une méthode un peu moins bourrin (quoique ^^) que de faire tourner un autre programme est d'utiliser CreateProcess pour lancer ton appli.

    Tu peux alors exécuter comme si tu étais un debugger, et être prévenu de la fermeture du programme
    Mea est trop forte, elle flotte : mea coule pas !

    Basically this boot sector (Win95) code is 32 bit extension for a 16 bit patch to an 8 bit boot sector originally coded for a 4 bit microprocessor, written by a 2 bit company, that can't stand 1 bit of competition.

    olance.developpez.com
    Servez-vous, profitez, abusez de la FAQ Delphi !!

  6. #6
    DMO
    DMO est déconnecté
    Membre averti
    Avatar de DMO
    Profil pro
    Inscrit en
    Février 2004
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 290
    Points : 343
    Points
    343
    Par défaut
    Puisque je ne pense pas que tu ais besoin d'une finesse de détection de l'ordre de la nanoseconde, voici une autre petite suggestion :

    Régulierement (un timer donc, genre toutes les 1 à 5 secondes), tu cherches parmis les processus en cours d'execution celui ou ceux qui t'interesse(nt). Quand tu le trouves tu commences à compter, lorsque tu ne le trouve plus, hop tu arrêtes.

    Bon évidemment ce n'est valable que si tu trouves le moyen d'énumérer les processus en cours d'execution. Mais je ne pense pas que ce soit impossible (remarque je n'ai pas cherché, je te laisse faire ).

    Au moins c'est pas "flag" : "Mais si !, utilise le lanceur, c'est pratique !" et ca fonctionnera jusqu'au jour où l'enfant sera assez grand pour trouver le processus surveillant et le descendre (ca arrive généralement plus vite qu'on ne le croit )

    Bonne continuation.
    « La simplicité est la sophistication suprême » (Léonard de Vinci)

  7. #7
    Membre expert
    Avatar de Bestiol
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 515
    Points : 3 894
    Points
    3 894
    Par défaut
    hé hé t'as pas tort DMO

    Voici des pistes pour lister les processus actifs :
    CreateToolHelp32Snapshot, Process32First, Process32Next

    Il faut ajouter une unité dont j'ai oublié le nom... Quelque chose comme ToolHelp32, ToolHlp32... Google t'en diras sûrement plus

    Bonne prog' ^^
    Bestiol.

    PS: ça sent la FAQ
    Mea est trop forte, elle flotte : mea coule pas !

    Basically this boot sector (Win95) code is 32 bit extension for a 16 bit patch to an 8 bit boot sector originally coded for a 4 bit microprocessor, written by a 2 bit company, that can't stand 1 bit of competition.

    olance.developpez.com
    Servez-vous, profitez, abusez de la FAQ Delphi !!

  8. #8
    Membre régulier
    Homme Profil pro
    Développeur indépendant
    Inscrit en
    Mai 2002
    Messages
    231
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur indépendant

    Informations forums :
    Inscription : Mai 2002
    Messages : 231
    Points : 116
    Points
    116
    Par défaut
    Merci pour vos réponses , je vais chercher dans cette direction

    Philippe

Discussions similaires

  1. eclaircissement sur fonctionnement programme c
    Par allezlolo dans le forum C
    Réponses: 13
    Dernier message: 10/10/2008, 02h04
  2. déterminer la durée de déroulement d'un programme
    Par mohamed.chedly dans le forum Autres Logiciels
    Réponses: 2
    Dernier message: 23/12/2005, 10h09
  3. Réponses: 2
    Dernier message: 30/10/2005, 15h38
  4. Programme ne fonctionnant que sur certaines machines
    Par Marekh dans le forum DirectX
    Réponses: 14
    Dernier message: 30/08/2005, 15h09
  5. Programme fonctionnant sur Eclipse mais pas avec le jar?
    Par kirik dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 10/02/2004, 14h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo