AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Ereignis beim Shutdown

Ein Thema von Dannyboy · begonnen am 28. Apr 2004 · letzter Beitrag vom 28. Apr 2004
Antwort Antwort
Seite 1 von 2  1 2      
Dannyboy

Registriert seit: 4. Aug 2003
Ort: Delphi-Heaven
418 Beiträge
 
Delphi 7 Personal
 
#1

Ereignis beim Shutdown

  Alt 28. Apr 2004, 10:58
Hallo zusammen,
mein Dateiverschlüsselungsprogramm läuft permanent im Hintergrund
und soll automatisch kurz vor dem Herunterfahren des PCs
einen Meldungsdialog auf dem Bildschirm ausgeben, welcher dann
vom Benutzer weitere Anweisung erwartet. Man kann hier z.B. bestimmte
Ordner auswählen deren Dateien dann verschlüsselt werden.
Mein PC (Windows XP Prof.) MUSS solange warten, bis mein Programm seine
Aufgaben erfüllt hat!
Also:
- Wie erfahre ich, dass der Computer gerade heruntergefahren wird
- Wie halte ich dieses Ereignis auf, bis mein Programm seine Aufgaben beendet hat
Greetz

DANNYBOY
How much wood would a wood-chuck chuck if a wood-chuck would chuck wood?
Check this out.
DANNYBOY
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Ereignis beim Shutdown

  Alt 28. Apr 2004, 11:20
Wird die Session beended schickt Windows erst ein MSDN-Library durchsuchenWM_QUERYENDSESSION und dann zum Schluss noch mal ein MSDN-Library durchsuchenWM_ENDSESION. Ersteres wäre der richtige Zeitpunkt, um noch was auszuführen. Aber all zu viel würde ich da nicht mehr machen, ich weiß nicht, wie geduldig Windows da noch ist.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#3

Re: Ereignis beim Shutdown

  Alt 28. Apr 2004, 11:29
Ich weiß nicht genau wann das ausgelöst wird, aber Windows "schießt" nach einer Weile alle Programme ab, die nicht beendet wurden. Zum Beispiel: Das Programm meiner kabellosen Maus zeigt beim Herunterfahren eine Warnung an, falls die Batterien schwach sind. Klicke ich den Dialog nicht weg so versucht Windows (XP Pro), den Prozess zu beenden. Wie viel man noch vor dem Herunterfahren machen kann weiß ich nicht, denn wenn ich den PC herunterfahre dann sollte das jetzt geschehen, und nicht in 10 Minuten, insofern hat Microsoft mit der Strategie schon Recht.
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Killer

Registriert seit: 11. Nov 2003
152 Beiträge
 
Delphi 6 Enterprise
 
#4

Re: Ereignis beim Shutdown

  Alt 28. Apr 2004, 11:36
Die Zeit, bis die Prozesse "gezwungen" werden zu schließen, kann man in der Registry festlegen. Normal liegt sie bei 20 Sekunden. Aber ich glaube nicht dass dir die Zeit ausreichen wird

Falls du mehr darüber wissen willst, hier n Link zum Thema: Link
  Mit Zitat antworten Zitat
Dannyboy

Registriert seit: 4. Aug 2003
Ort: Delphi-Heaven
418 Beiträge
 
Delphi 7 Personal
 
#5

Re: Ereignis beim Shutdown

  Alt 28. Apr 2004, 11:54
O.k., danke alcaeus, danke Luckie.
Die Nachricht WM_QUERYENDSESSION werde ich dann auf jeden Fall abfangen, so weiss ich
wann das Betriebssystem herunterfährt.
Bleibt nur noch das Anhalten:
Manchmal wartet Windows doch mit dem Herunterfahren, weil ein bestimmer Prozess
nicht beendet werden kann. Es erscheint ein Dialog, auf dem man als User dann
"ignorieren", "Prozess beenden" oder "warten" auswählen kann. Bevor der User allerdings
keines dieser Buttons klickt, fährt das System, meiner Erfahrungen nach, nicht hinunter.
Und exakt diese Funkionalität benötige ich für mein Programm.
Beim Versuch den PC herunter zufahren soll mein Proggy bestimmte Ordner verschlüsseln und
sobald dieser Prozess beendet ist, darf das System herunterfahren.
Also, geht da was?
How much wood would a wood-chuck chuck if a wood-chuck would chuck wood?
Check this out.
DANNYBOY
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#6

Re: Ereignis beim Shutdown

  Alt 28. Apr 2004, 11:57
Den Dialog gibts bei meinem WindowsXP nicht mehr, falls sich ein Programm nicht beendet so bringt Windows einen Dialog mit ProgressBar, und nach 10 Sekunden ist die ProgressBar ganz oben und das Programm fliegt raus. Der einzige Button drauf ist "Programm sofort beenden", das heißt da geht nichts mehr...
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Dannyboy

Registriert seit: 4. Aug 2003
Ort: Delphi-Heaven
418 Beiträge
 
Delphi 7 Personal
 
#7

Re: Ereignis beim Shutdown

  Alt 28. Apr 2004, 11:59
Verdammt, ich brauche diese Funktionalität unbedgint!!! Das muss gehen!
Und wenn mir jemand erklärt, wie mein Programm das XP derart abstürzen lässt, dass XP
nicht runterfahren kann, ist mir das auch Recht.
How much wood would a wood-chuck chuck if a wood-chuck would chuck wood?
Check this out.
DANNYBOY
  Mit Zitat antworten Zitat
Benutzerbild von fiasko
fiasko

Registriert seit: 10. Dez 2002
Ort: Dresden
506 Beiträge
 
#8

Re: Ereignis beim Shutdown

  Alt 28. Apr 2004, 12:04
Ähm du brauchst doch nur auf die WM_QUERYENDSESSION den Wert 0 zurückliefern, dann wird das ganze abgebrochen - steht zumindest so in den MSDN...
Thomas Liske
Posts comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#9

Re: Ereignis beim Shutdown

  Alt 28. Apr 2004, 12:06
Heißt das, dass ich das Herunterfahren des Systems abbrechen kann?
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Ereignis beim Shutdown

  Alt 28. Apr 2004, 12:07
Da nach musst du aber selber die Session beenden, sonst müsste der Benutzer ja noch mal auf "Beenden" klicken. Und dazu musst du dir merken, ob er sich nur abmeldet, einen Neustart macht oder ganz runterfährt.
Michael
Ein Teil meines Codes würde euch verunsichern.
  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 04:09 Uhr.
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