Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Logout nach Zeit (https://www.delphipraxis.net/120513-logout-nach-zeit.html)

Jelly 12. Sep 2008 12:41

Re: Logout nach Zeit
 
Zitat:

Zitat von Sherlock
Microsoft schon ;) So funktionieren halt Bildschirmschoner, oder das Sperren eines Arbeitsplatzes.

Da sieht man mal was die unter Arbeit verstehen :mrgreen:

Zum Problem mit den modal Dialogen:
Ich hatte dasselbe Problem mal in einer .NET Anwendung unter Visual Studio. Meine Lösung bestand darin, alle Forms deiner Anwendung von einer Basisform abzuleiten, und den Konstructor und Destructor zu überschreiben. Bei jedem Create knallst du die Form in eine zentrale ObjectList rein, bei jedem Destroy schmeisst du sie wieder raus. Die List hat den Vorteil, dass sie, wenn sie von hinten nach vorn durchgearbeitet wird, dir die richtige Schliess-Reihenfolge der Fenster gibt.

Tritt jetzt also ein Timeout ein, so schliesse einfach alle Fenster aus der Liste im Application Event. Vergiss aber nicht zu überprüfen, ob das Close funktioniert, denn es kann unter gewissen Umständen nämlich fehlschlagen, z.B. wenn eine MessageBox grad noch geöffnet ist.

Ich bin damals sogar noch einen Schritt weiter gegangen. Statt über ein normales Close zu schliessen, habe ich eine virtuelle Methode ForceClose in der Basisform implementiert, die dann bei Bedarf noch in jeder Childform überschrieben werden kann, und eventuell noch z.B. Rollbacks in der Datenbank durchzuziehen.

BigAl 12. Sep 2008 20:36

Re: Logout nach Zeit
 
Zitat:

Zitat von guidok
Ich habe keine elegantere Lösung, aber ich stelle mir gerade vor, mit deinem Programm zu arbeiten, irgendwelche Daten eingebe oder bearbeite, kurz auf die Toilette muss, dabei vielleicht jemanden treffe und einen Plausch (natürlich dienstlich) halte, zurück komme und feststellen muss, dass meine bisherige Arbeit für die Katz war, weil mich das Programm abgemeldet hat.


Hi,

daztu muss man sagen, dass es sich bei dem Programm eine Software handelt, welche dediziert auf einem Rechner läuft. Der Rechner selbst dient dazu Daten von einem Prozess zu erfassen und wird vom Bedienpersonal Vorort sporadisch bedient. Ich bin Automatisierer und - wie der Name schon sagt - passiert bei dem Programm fast alles automatisch. Der Login ist für den Administrator notwendig um die Prozessparameter einzustellen. Hierbei handelt es sich um ein paar hunder Parameter, welche in den verschiedensten Masken gepflegt werden können... Is also nix mit aufs Klo gehen :-)

Ach ja: Verloren geht auch nichts, da die Parameter jeweils bei der eingabe gespeichert werden und die Dialog eigentlich eh hauptsächlich zur Auswertung der Daten (Charge suchen etc) sind...

Soviel zum Hintergrund... Man muss halt immer auch wissen wofür die Software ist, ehe man darüber urteilt :wink:

Alex


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:08 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz