AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Realisierung Programm wurde gewisse Zeit nicht bedient ?
Thema durchsuchen
Ansicht
Themen-Optionen

Realisierung Programm wurde gewisse Zeit nicht bedient ?

Ein Thema von RalfE · begonnen am 27. Jan 2011 · letzter Beitrag vom 28. Jan 2011
Antwort Antwort
Seite 1 von 2  1 2      
alfold

Registriert seit: 29. Jun 2010
Ort: Neustrelitz
393 Beiträge
 
Delphi 7 Enterprise
 
#1

AW: Realisierung Programm wurde gewisse Zeit nicht bedient ?

  Alt 27. Jan 2011, 13:39
hi, lasst den TE doch erst mal auf die vielen Angebote antworten
Noch weiss ja keiner so richtig wie er dies meint?
Hallo,
...dass ein Programm vom Benutzer x-Stunden nicht benutzt(bedient) wurde ?
....
Meint er nun sein Prog, oder evtl allg Programme in Windows?

Zumal sich ja hier auch die Frage aufwirft, das man eigtl wissen sollte, was man auf seinem Rechner noch alles selber gestartet hatt. Und wenn ich was anderes machen soll/muss, ich alles beende wenn ich den Platzt verlasse.
Da nützt mir auch nicht, das mir (m)ein Prog mitteilt, das ich x Stunden nix mehr am Prog/Rechner gemacht habe oder sogar den Rechner runterfährt(Datenverlust mit eingeschlossen )
Nur weil was auch immer mich daran hindern sollte, Programme die ich nicht mehr brauche auch zu beenden

Gruss alfold
  Mit Zitat antworten Zitat
Benutzerbild von Assarbad
Assarbad

Registriert seit: 8. Okt 2010
Ort: Frankfurt am Main
1.234 Beiträge
 
#2

AW: Realisierung Programm wurde gewisse Zeit nicht bedient ?

  Alt 27. Jan 2011, 13:43
Übrigens, ist MSDN-Library durchsuchenWM_ENTERIDLE nicht auch ein gangbarer Weg? Könnte auch über einen Hook für andere Fenster abgefangen werden ...
Oliver
"... aber vertrauen Sie uns, die Physik stimmt." (Prof. Harald Lesch)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.555 Beiträge
 
Delphi 12 Athens
 
#3

AW: Realisierung Programm wurde gewisse Zeit nicht bedient ?

  Alt 27. Jan 2011, 15:16
MSDN-Library durchsuchenGetTickCount macht in diesem Fall keinerlei Probleme, da MSDN-Library durchsuchenLASTINPUTINFO das selbe Format verwendet.

Es gäbe also nur Probleme, wenn der User 49,7 Tage lang nichts mehr am PC gemacht hat.

Und durch die Verwendung eines Ersatzes für GetTickCount läßt sich auch nichts verbessern, da LASTINPUTINFO dennoch beschränkt wäre.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
alfold

Registriert seit: 29. Jun 2010
Ort: Neustrelitz
393 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Realisierung Programm wurde gewisse Zeit nicht bedient ?

  Alt 27. Jan 2011, 15:27
.....
Es gäbe also nur Probleme, wenn der User 49,7 Tage lang nichts mehr am PC gemacht hat.
....
Urlaub

Ich denke mal das so lange sicherlich nicht gemeint ist und länger als ne halbe oder ganze Stunde he kaum in betracht kommt! Alles was schon länger ist, ist ja im betrieblichen Einsatz schon reine verschwendung!

Gruss alfold
  Mit Zitat antworten Zitat
Benutzerbild von Assarbad
Assarbad

Registriert seit: 8. Okt 2010
Ort: Frankfurt am Main
1.234 Beiträge
 
#5

AW: Realisierung Programm wurde gewisse Zeit nicht bedient ?

  Alt 27. Jan 2011, 16:38
Es gäbe also nur Probleme, wenn der User 49,7 Tage lang nichts mehr am PC gemacht hat.
Unsinn. Es geht nicht darum wie lange der Benutzer etwas gemacht hat oder nicht sondern wie lange der Computer schon läuft. Wenn bei der Zeitabnahme an Punkt X und an Punkt X+Y der Wert überlief, haste trotzdem Mist als Ergebnis bei allen bisher abgelieferten Codebeispielen.

Zitat:
The tick count when the last input event was received.
Dort steht "when", nicht "since".

Der Überlauf kann an beliebiger Stelle kommen. Die Tatsache daß MSDN-Library durchsuchenLASTINPUTINFO es auch verwendet macht's eigentlich eher schlimmer, weil dann einfach dort das gleiche Problem dort auftritt.

Fazit: Ab Vista MSDN-Library durchsuchenGetTickCount64 statt GetTickCount verwenden oder Vorkehrungen treffen damit der Überlauf nicht alles versaut. Vorkehrungen müssen in jedem Fall bei MSDN-Library durchsuchenLASTINPUTINFO getroffen werden, weil es scheinbar kein 64bittiges Pendant gibt.
Oliver
"... aber vertrauen Sie uns, die Physik stimmt." (Prof. Harald Lesch)
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#6

AW: Realisierung Programm wurde gewisse Zeit nicht bedient ?

  Alt 27. Jan 2011, 16:42
[...] haste trotzdem Mist als Ergebnis bei allen bisher abgelieferten Codebeispielen.
Nicht ganz. Kombiniert man mein Beispiel mit dem OnMessage-Event mit der Timer-Idee von Sir Rufo bzw. himitsu, dann ist es unabhängig von GetTickCount - sofern die Timer bei 50 Tage Dauerlauf noch arbeiten wie sie sollen
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Assarbad
Assarbad

Registriert seit: 8. Okt 2010
Ort: Frankfurt am Main
1.234 Beiträge
 
#7

AW: Realisierung Programm wurde gewisse Zeit nicht bedient ?

  Alt 27. Jan 2011, 16:43
[...] Timer-Idee [...]
Don't get me started
Oliver
"... aber vertrauen Sie uns, die Physik stimmt." (Prof. Harald Lesch)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.555 Beiträge
 
Delphi 12 Athens
 
#8

AW: Realisierung Programm wurde gewisse Zeit nicht bedient ?

  Alt 27. Jan 2011, 17:01
Unsinn. Es geht nicht darum ...
Nicht?

LASTINPUTINFO = wann hatte der Benutzer zuletzt was gemacht (seit dem Systemstart aka Wert von GetTickCount)
GetTickCount = wie lange läuft das System schon

Bei der Differenzberechnung hat ein "Überlauf" in diesen Werten keine Auswirkung, solange beide Werte keine Differenz von mehr als die 47 Tage haben.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.666 Beiträge
 
Delphi 12 Athens
 
#9

AW: Realisierung Programm wurde gewisse Zeit nicht bedient ?

  Alt 27. Jan 2011, 17:25
Ich mag mich täuschen, aber werden da nicht im worst case Äpfel mit Birnen verglichen?
GetTickCount -> Zeit seit dem Systemstart
GetLastInputInfo -> Zeit seit der letzten Benutzeraktion in der aktuellen Session

Es kann also sein, dass beim Einen ein Überlauf eintritt, beim Anderen aber nicht (sofern ich keinen groben Denkfehler mache).
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#10

AW: Realisierung Programm wurde gewisse Zeit nicht bedient ?

  Alt 27. Jan 2011, 17:46
Delphi-Quellcode:
var
 c,d:cardinal;
 i:Integer;
 Procedure AddAndDisplay;
  begin
   c := c + 10;
   d := d + 10;
   Memo1.Lines.Add(IntToStr(c-d) + ' - ' + IntToStr(c) + ' - ' + IntToStr(d));
  end;
begin
   c := 4294967290;
   d := c - 20;
   Memo1.Lines.Add(IntToStr(c-d) + ' - ' + IntToStr(c) + ' - ' + IntToStr(d));
   for I := 0 to 10 do AddAndDisplay;
end;
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:23 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-2025 by Thomas Breitkreuz