Hallo Zusammen,
ich mache eine Tabellen-Ausdruck mit Excel und möchte nach dem Ausdruck Excel wieder schließen. Dazu suche ich mir das entsprechende Fenster und gebe dann über SendMessage den Schliesse-Befehl.
Jetzt habe ich aber das Problem, dass Excel fragt, ob die Datei gespeichert werden soll. Kann ich das mit SendMessage umgehen?
Delphi-Quellcode:
procedure TExcelExport.ShowTemp(Pfad: string; Drucken: boolean);
var h: hwnd;
begin
OpenTemp;
FExcelApp.Workbooks.open(pfad);
if Drucken then begin
FExcelApp.Worksheets.PrintOut;
h := FindWindowByTitle(copy(pfad, Length(pfad)-25,21)); //Hier wird das entsprechende Fenster gesucht
if h <> 0 then
SendMessage(h, WM_SYSCOMMAND, SC_CLOSE, 0) // und hier schließe ich es. Gibt es hier einen Parameter, der die Speicherfrage unterdrückt?
else
ShowMessage('not found.');
end
else begin
FExcelApp.Visible := True;
end;
end;
Vielen Dank
Patrick