Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Windows 2008 Server und Word über OLE - Fehler bei Free (https://www.delphipraxis.net/139140-windows-2008-server-und-word-ueber-ole-fehler-bei-free.html)

MacGuyver 24. Aug 2009 15:25


Windows 2008 Server und Word über OLE - Fehler bei Free
 
Moin Leute :hi:

Ich habe ein kleines Problem mit Word und dem MS-SQL Server 2008. Ich kann über OLE Word öffnen und mir die Versionsnummer holen, schön und gut. Sobald ich dann die Variable word mittels Word := unassigned; wieder freigebe, kommt die Meldung: ... Anwendungsdefinierte Exception (Code 0x800706ba) bei 0x75cee124 ... auf. Habt ihr da schon Erfahrung mit gesammelt? Ist das einfach nur die OLE-Verbindung? Unter allen anderen Betriebssystemen funktioniert das.

Delphi-Quellcode:
word: variant;

word := CreateOleObject('Word.Application');
später dann...

Delphi-Quellcode:
word.application.quit;
und dann...

Delphi-Quellcode:
word := Unassigned;

Wenn ich word.application.quit nicht aufrufe kommt der Fehler nicht auf. Ist aber nicht im Sinne des Erfinders, das Word offen im Hintergrund rumdümpeln zu lassen.


Stefan

MacGuyver 25. Aug 2009 14:30

Re: Windows 2008 Server und Word über OLE - Fehler bei Free
 
Moin,

ich habe da mal ein bisschen gesucht und getestet. So wie es aussieht, sage ich dem blöden Ding, wenn du SQL Server 2008, dann lass das Teil offen. Ok, das ist keine Lösung, eher ein Workaround. :(

Stefan

MacGuyver 26. Aug 2009 16:48

Re: Windows 2008 Server und Word über OLE - Fehler bei Free
 
Moin auch,

ich bin dabei noch etwas weiter gekommen. Wenn man den Schlüssel
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Session Manager\kernel\DisableExceptionChainValidation
auf "1" setzt, dann funktioniert das. Das macht den Eindruck, dass Word auf dem Microsoft Server 2008 nicht 100%ig umgesetzt ist. Auf Vista habe ich das noch nicht ausprobiert, dort soll der Eintrag nicht existieren oder auf "0" stehen. Diese Einstellung als Lösung auf "0" zu setzen und die Kunden weinen "eine Sicherheitslücke!" ... ich weiß nicht.

Gibt es dort vielleicht sogar Ähnlichkeiten zu Excel?

Hat sich die Ansteuerung OLE von Delphi 5 zu Delphi 2009 gravierend geändert?


Stefan

MacGuyver 28. Aug 2009 12:25

Re: Windows 2008 Server und Word über OLE - Fehler bei Free
 
Tach auch!


Heureka! :thumb:

Bei der Lösung packe ich mir an den Kopp. :wall:





Delphi-Quellcode:
word : variant;

DAS ist der Fehler. Da hat der Entwickler sich sicherlich keine Gedanken drüber gemacht, dass das ein Datentyp ist. :wiejetzt: Keine Ahnung wieso, aber ich habe da mal ein "F" vorgepackt und es läuft.

Delphi-Quellcode:
FWord : variant;
Ein Kollege witzelte gleich mit dem F-Wort rum. :mrgreen:

Kann das jemand vielleicht genau erläutern, warum es geknallt hat? Mit der Variantstechnik kenne ich mich nicht vom System her aus.


Stefan


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:34 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