Hallo Leute,
mein Prog erzeugt ein Excel-Object und öffnet eine Datei wie folgt:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| Excel := TExcelApplication.Create(Application); ExcelWorkbook1 := TExcelWorkbook.Create(Application); ExcelWorksheet1 := TExcelWorksheet.Create(Application); Excel.ConnectKind := ckNewInstance; Excel.Connect; Excel.Visible[GetUserDefaultLCID] := true; Excel.UserControl := True; Excel.Workbooks.Open(filename, False, False, EmptyParam, '', False, False, EmptyParam, EmptyParam, false, false, EmptyParam, false, 0); ExcelWorkbook1.ConnectTo(excel.ActiveWorkBook); ExcelWorksheet1.ConnectTo(ExcelWorkbook1.Sheets.Item[1] as _Worksheet); ExcelWorksheet1.Activate; |
So jetzt öffnet sich ein Excel Fenster und EXCEL.exe taucht im TaskManager auf.
Mit
excel.Quit; Schließt sich das Fenster und EXCEL.exe verschwindet aus TaskManager. Schließt der User aber das Excel-Fenster manuell läuft die exe ja weiter. Kann man irgenwie rausfinden wann das Fenster geschlossen wird, damit dann [code] excel.Quit; [/delphi] aufgerufen werden kann? Sonst habe ich eine Menge von EXCEL Prozessen laufen, wenn der User paar Dateien bearbeitet hat
Danke und Gruß
Denis
Moderiert von
Narses: Code- durch Delphi-Tags ersetzt