Registriert seit: 14. Jun 2003
36 Beiträge
Delphi 4 Professional
|
Re: vor runterfahren ein programm starten
21. Jul 2003, 22:45
Tach,
hier die Prozedure mit der man einen Neustart/Logoff abfangen kann.
Delphi-Quellcode:
unit Unit1;
interface
uses
SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
CheckBox1: TCheckBox; // Nur zu Testzwecken...
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
procedure WMQueryEndSession( var Message: TWMQueryEndSession); message WM_QUERYENDSESSION;
public
end;
var
Form1 : TForm1;
implementation
{$R *.DFM}
//Die Message wird nur erhalten, wenn das System runtergefahren wird.
procedure TForm1.WMQueryEndSession( var Message: TWMQueryEndSession);
begin
inherited; //wichtig
// pack hier die Abfrage rein, ob das Backup fertig ist.
// wenn das System neugestartet werden darf, dann setze Result auf true
// ich hab das ganze hier mal mit ner checkbox gemacht.
if form1.CheckBox1.Checked=true // Checkbox = true => Reboot abgebrochen
then message.Result:=0 // EndSession = False
else message.Result:=1; // EndSession = True
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
// Backupprozeduren oder soo....
end;
end.
Mit Win2k und XP kein Problem, wies mit anderen Systemen aussieht musst du probieren.
Gruss Moori
Ich brauche keine Pointer, Threads usw, ich krieg auch ohne schon genügend lustige Fehler!
|
|
Zitat
|