Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Excel 2007 mit Delphi 7 - Fehler beim CreateOleObject (https://www.delphipraxis.net/164829-excel-2007-mit-delphi-7-fehler-beim-createoleobject.html)

ProPinball 1. Dez 2011 14:09

Excel 2007 mit Delphi 7 - Fehler beim CreateOleObject
 
Hallo,

ich sollte beliebige Daten von Delphi 7 aus in eine Excel-Datei schreiben. Grundsätzlich sind mir die Abläufe verständlich, hab das Ganze schon unter Delphi 5 erfolgreich implementiert.

Mein Problem ist nun, dass die selben Routinen unter Delphi 7 nicht mehr funktionieren. Genauer gesagt ist es eigentlich nur Eine und zwar scheitere ich direkt schon beim Erstellen des Excel-Objects:

XlApp:=CreateOleObject('Excel.Application');

Wenn ich diese Funktion aufrufe erhalte ich nach ca. 2 Sekunden eine Fehlermeldung vom Excel

"Microsoft Office Excel hat ein Problem festgestellt und muss beendet werden.

Falls Sie Ihre Arbeit noch nicht gespeichert hatte, können Daten möglicherweise verloren gegangen sein.

[X] Microsoft Office Excel neu starten

...

[Debuggen] [Fehlerberichterstattung senden] [Nicht berichten]"

Klicke ich dann auf Nicht berichten wird das Excel geöffnet und im Programm wird mit der nächsten Codezeile fortgefahren (es wird keine Exception ausgelöst).

Ich hab auch schon versucht das Erstellen des Objects und das Befüllen des Sheets in einer Delphi 5 DLL zu machen, und diese dann nur aus Delphi 7 aufzurufen. Aber da kommt der gleiche Fehler.
Nur wenn ich alles direkt in Delphi 5 mache klappt es.

Auch versucht hab ich schon direkt die TExcelApplication Komponente vom Delphi 7. Hier auch ohne Erfolg. Es kommt wieder der gleiche Fehler wie oben, plus zusätzlich danach noch ein Fehler "Exception der Klasse EIntfCastError" "Schnittstelle nicht unterstützt".

Das Delphi 5 wo es funktioniert und das Delphi 7 sind beide auf dem gleichen Rechner installiert (Windows XP).

Irgendjemand eine Idee was ich noch machen könnte?

Danke,
ProPinball.

Bernhard Geyer 1. Dez 2011 14:22

AW: Excel 2007 mit Delphi 7 - Fehler beim CreateOleObject
 
Ergänz mal in deiner Projektdatei (*.dpr) vor der Zeile mit .CreateForm die Zeile

Delphi-Quellcode:
  Application.Initialize;

ProPinball 1. Dez 2011 14:28

AW: Excel 2007 mit Delphi 7 - Fehler beim CreateOleObject
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1138826)
Ergänz mal in deiner Projektdatei (*.dpr) vor der Zeile mit .CreateForm die Zeile
Delphi-Quellcode:
  Application.Initialize;

Ist so bereits drinnen:

program TestXLS;

uses
Forms,
Main in 'Main.pas' {MainWin};

{$R *.res}

begin
Application.Initialize;
Application.Title := 'Test';
Application.CreateForm(TMainWin, MainWin);
Application.Run;
end.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:04 Uhr.

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