![]() |
Zeit messen wie lange eine anwendung aktiv ist
hallo
ich benutze Delphi 7 und würde gerne eine prozedur schreiben, die die Zeit misst, wie lange ein Programm aktiv ist. Da ich den Start eines Programms ja nicht abfangen kann, dachte ich also an eine prozedur, die alle x Sekunden prüft, ob ein Programm aktiv ist. Diese Prüfung habe ich hinbekommen, aber wie gestalte ich diese Schleife, damit sie performanceschonend ist und das Programm trotzdem noch ansprechbar ist? Also mit Sleep(5000) habe ich es schon probiert, aber da kann ich mit dem Programm so lange nichtsmehr machen. Das fällt also weg. Er überwacht übrigens ein bestimmtes Programm, es geht mir nur um diesen zeitlichen Widerstand, dass er eben 5 Sekunden lang nichts tut und dann prüft, wieder 5 sekunden lang nichts tut und das so lange bis das Programm entweder aktiv ist, dann geht die Schleife von vorne los mit dem Unterschied dass er jetzt aufzeichnet wie lange es aktiv ist. Bis das Programm beendet wird. Wie kann ich das einrichten? Und wie kann ich am besten die Dauer festhalten und berechnen die das Programm läuft? Sorry, bin Anfänger! Freue mich über Antworten! :love: |
Re: Zeit messen wie lange eine anwendung aktiv ist
Ähm wozu eine Schleife? oO
Beim Start des Programms rufst du einfach GetTickCount auf. Das Ergebnis davon speicherst du in einer Cardinal Variable. In dem Moment, an dem du wissen möchtest wieveil zeit vergangen ist. Weisst du einer zweiten Variable vom Typ Cardinal das Ergebnis von GetTickCount zu. Zieht die erste Zahl von der zweiten ab und hast die Millisekunden seit Programmstart. Gruß Tyrael |
Re: Zeit messen wie lange eine anwendung aktiv ist
Zitat:
Was er will, dazu sollte die Komponente ![]() ...:cat:... |
Re: Zeit messen wie lange eine anwendung aktiv ist
...ups sry :oops: ....man sollte doch mal genauer lesen
|
Re: Zeit messen wie lange eine anwendung aktiv ist
ok den Timer hab ich hinbekommen, hab ihm den Intervall 5000 zugewiesen.
Jetzt nehme ich an, dass ich das, was er ausführen soll, in OnTimer packen muss. Nur brauch OnTimer dann wohl ein TNotifyEvent. Leider hab ich davon nie was gehört... Wie krieg ich denn da jetzt einen befehl rein oder auch eine andere Prozedur... Alle 5 sekunden soll er diese Prozedur ausführen... :shock: |
Re: Zeit messen wie lange eine anwendung aktiv ist
Idee: Windows misst ja von Haus aus die CPU-Zeit, vielleicht misst es ja dann auch die echte Laufzeit :gruebel:
Zitat:
|
Re: Zeit messen wie lange eine anwendung aktiv ist
ahso. Hab den Timer unter System gefunden. Wusste nicht dass das die selben sind :oops:
Scheint so als hab ichs hinbekommen. Danke! :love: |
Re: Zeit messen wie lange eine anwendung aktiv ist
Kannst auch
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz