Hallo,
zum abfragen, ob Windows beendet wird verwend ich diesen Code:
Delphi-Quellcode:
procedure TMainForm.WMQueryEndSession(var Msg: TWMQueryEndSession);
begin
//Windows erlauben zu beenden
Msg.Result := 1;
//Wenn Windows beendet wird, dann Variable auf true setzen
Windows_Session_End := true;
//Programm schliessen
close;
inherited;
end;
Nun würd ich gerne, wenn Win beendet wird, noch mit ShellApi eine Datei kopieren und erst wenn diese fertig ist, Windows beenden lassen.
Kopieren tu ich mit:
Delphi-Quellcode:
function ShellFileOperation(Quelle: string; Ziel: string; Flags: Integer): Boolean;
var
shellinfo: TSHFileOpStructA;
begin
with shellinfo do
begin
wnd := Application.Handle;
wFunc := Flags;
pFrom := PChar(Quelle);
pTo := PChar(Ziel);
end;
Result := SHFileOperation(shellinfo) = 0;
end;
Wenn ich nun die kopierfunction in die obere procedure einbinde, dann bekomm ich eine Fehlermeldung, dass die datei nicht kopiert werden konnte, oder der Datenträger nicht mehr vorhanden sei.
Wie kann ich es machen, dass beim Win-Beenden noch kopiert wird?
mfg
Helmi
>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<