Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Prozess EXCEL.EXE wieder schließen (https://www.delphipraxis.net/103689-prozess-excel-exe-wieder-schliessen.html)

ferby 20. Nov 2007 08:51


Prozess EXCEL.EXE wieder schließen
 
Hallo,

ich verwende Excel_TLB um auf Excel zuzugreifen.



Mit den Zeilen

Delphi-Quellcode:
    Excel.Connect;
    Excel.Workbooks.Open(ExcelPfad, emptyParam, emptyParam, emptyParam,
    emptyParam, emptyParam, emptyParam, emptyParam, emptyParam, emptyParam,
    emptyParam, emptyParam, EmptyParam, EmptyParam, EmptyParam,_lcid);
wird im Taskmanager der Prozess EXCEL.EXE gestartet.
Leider weiß ich nicht wie ich diesen Prozess nacher wieder schließen kann....

Excel.Disconnect bringt nix,
kann mir wer weiter helfen?

Bzw. wie kann ich abfragen ob der Prozess schon vor meinen Programm rennt, den dann brauch ich ihn ja nicht mehr schließen.

peschai 20. Nov 2007 10:01

Re: Prozess EXCEL.EXE wieder schließen
 
Hallo

Versuch mal deiner Variablen "Excel" den Wert NIL zuzuwiesen ... oder Excel.Close

shmia 20. Nov 2007 13:13

Re: Prozess EXCEL.EXE wieder schließen
 
Dass Excel nach einem Zugriff über die Automatisierungsschnittstelle weiterläuft ist vom Microsoft übrigens so gewollt.
Ruf mal die Methode [ExcelApplication].Quit auf, wenn dich das stört.
Wenn ich Daten nach Excel exportiere, dann lasse ich Excel so stehen wie es ist.
Dazu müssen die Properties [ExcelApplication].UserControl und [ExcelApplication].Visible auf True gesetzt werden.
Der Benutzer kann dann entscheiden, ob er das Workbook speichern möchte oder nicht.
(Vielleicht will er vorher auch ein Diagramm einfügen...)


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:45 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz