AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Programm ignoriert FormDestroy wenn im Systemtray
Thema durchsuchen
Ansicht
Themen-Optionen

Programm ignoriert FormDestroy wenn im Systemtray

Ein Thema von JPSelter · begonnen am 20. Apr 2005 · letzter Beitrag vom 27. Apr 2005
Antwort Antwort
Benutzerbild von JPSelter
JPSelter

Registriert seit: 24. Jan 2005
Ort: Attendorn/Sauerland
235 Beiträge
 
Turbo Delphi für Win32
 
#1

Programm ignoriert FormDestroy wenn im Systemtray

  Alt 20. Apr 2005, 10:49
Ich sage meinem Programm, das ständig im Systemtray nebenherläuft, dass es beim Herunterfahren von Windows einen bestimmten Wert in eine TXT Datei schreiben soll. Diese Routine steht in der FormDestroy Prozedur. Aber wenn das Programm minimiert ist und vom System geschlossen wird, lässt er FormDestroy einfach weg. Was kann ich dagegen tun?
=JPSelter=

Visit www.ditonovia.de for our breathtaking movies: Herrin der Ringe (Fantasy 2005), Hemisphere (Science-Fiction 2004) & Braveknife (Parodie 2001) and more...
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Programm ignoriert FormDestroy wenn im Systemtray

  Alt 20. Apr 2005, 12:04
Dein Programm ignoriert offenbar die Aufforderung zum Beenden und wird zwangsweise beendet - ohne FormDestroy.
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

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

Re: Programm ignoriert FormDestroy wenn im Systemtray

  Alt 20. Apr 2005, 12:13
Hi JPSelter,

beim Herunterfahren wird Hier im Forum suchenWM_QUERYENDSESSION an alle Anwendungen gesendet. Einfach auf diese Message reagieren, und fertig

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Robert Marquardt
(Gast)

n/a Beiträge
 
#4

Re: Programm ignoriert FormDestroy wenn im Systemtray

  Alt 20. Apr 2005, 12:45
Erst kommt WM_QUERYENDSESSION und dann WM_ENDSESSION. Danach wird das Programm nicht mehr korrekt beendet sondern gekillt.
Es kommt kein WM_QUIT und daher weden auch die Komponenten/Forms nicht mehr freigegeben.
Also einen WM_ENDSESSION-Handler schreiben und dort selber FormDestroy aufrufen.
  Mit Zitat antworten Zitat
Benutzerbild von JPSelter
JPSelter

Registriert seit: 24. Jan 2005
Ort: Attendorn/Sauerland
235 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Programm ignoriert FormDestroy wenn im Systemtray

  Alt 27. Apr 2005, 10:12
Wie schaffe ich es denn, dass mein Programm beim herunterfahren des PCs nochmal kurz alles blockiert und auf meine Bestätigung wartet? So ungefähr wie bei Word/Excel, wenn man am Ende erst gefragt wird, ob die Änderungen gespeichert werden sollen.
=JPSelter=

Visit www.ditonovia.de for our breathtaking movies: Herrin der Ringe (Fantasy 2005), Hemisphere (Science-Fiction 2004) & Braveknife (Parodie 2001) and more...
  Mit Zitat antworten Zitat
Benutzerbild von JPSelter
JPSelter

Registriert seit: 24. Jan 2005
Ort: Attendorn/Sauerland
235 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Programm ignoriert FormDestroy wenn im Systemtray

  Alt 27. Apr 2005, 10:37
OK, habs hinbekommen
=JPSelter=

Visit www.ditonovia.de for our breathtaking movies: Herrin der Ringe (Fantasy 2005), Hemisphere (Science-Fiction 2004) & Braveknife (Parodie 2001) and more...
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Programm ignoriert FormDestroy wenn im Systemtray

  Alt 27. Apr 2005, 10:41
Das nächste Mal wäre es schön, wenn du sagen würdest, wie du das gemaht hast (im OnCloseQuery CanClose auf false stellen, oder so in der Art), für die, die das gleiche Problem haben.
  Mit Zitat antworten Zitat
Robert Marquardt
(Gast)

n/a Beiträge
 
#8

Re: Programm ignoriert FormDestroy wenn im Systemtray

  Alt 27. Apr 2005, 10:58
Das macht man einfach mit einem Dialog im WM_QUERYENDSESSION Handler.
Je nach Ergebnis des Dialogs kann man dann auch noch mit dem richtigen Rueckgabewert Windows dazu bringen nicht herunterzufahren.
Dazu ist WM_QUERYENDSESSION schliesslich da.
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Programm ignoriert FormDestroy wenn im Systemtray

  Alt 27. Apr 2005, 13:45
echt? man kann windows sagen, es soll nicht herunterfahren?
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Robert Marquardt
(Gast)

n/a Beiträge
 
#10

Re: Programm ignoriert FormDestroy wenn im Systemtray

  Alt 27. Apr 2005, 14:31
Es schadet nicht die Win32 Hilfe zu WM_QUERYENDSESSION zu lesen.
Es schadet auch nicht das Platform SDK von Microsoft installiert zu haben.
http://www.microsoft.com/msdownload/.../downlevel.htm
  Mit Zitat antworten Zitat
Antwort Antwort


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 06:19 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