Einzelnen Beitrag anzeigen

Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.312 Beiträge
 
Delphi XE2 Professional
 
#6

Re: Win7: Problem mit Speichern von Daten in OnClose

  Alt 5. Mär 2010, 19:31
Also wenn ich das richtig entziffere, dann muss das etwa so aussehen:

Delphi-Quellcode:
procedure TMainForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
// ShutdownBlockReasonCreate(Application.Handle, Format('%s speichert noch Dateien!', [Application.Title]));

  //Verbindung beenden

  //Inidatei schreiben

  //ListViews in "Monitor.xml" speichern

// ShutdownBlockReasonDestroy(Application.Handle);
end;
Nur steh ich gerade auf dem Schlauch: Wie kann ich die Funktionen "ShutdownBlockReasonCreate" und "ShutdownBlockReasonDestroy" von Delphi aus ansteuern?

[edit]
so - nun hab ich den Aufruf hinbekommen:
Delphi-Quellcode:
function ShutdownBlockReasonCreate(HWND: hWnd; LPCWSTR: String): Boolean; stdcall;
  external user32;
function ShutdownBlockReasonDestroy(HWND: hWnd): Boolean; stdcall;
  external user32;
Aber leider funktionierts trotzdem nicht...
Wenn ich den Eintrag bei MSDN richtig entziffere, dann müsste mit ShutDownBlockReasonCreate eine Meldung ausgeben mit dem Text den ich hinterlege, wenn meine Anwendung noch etwas braucht zum Runterfahren.
Mit ShutDownBlockReasonDestroy müsste dann meine Anwendung diese Meldung rücksetzen damit Windows normal runterfahren kann.

Aber es bleibt beim Alten - es wird nichts gespeichert und Win7 gibt keine Meldung aus
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat