![]() |
Runtime Error
Hallo
Ich habe folgendes Problem. Seit ich diesen Code abschnitt in meiner Applikation habe bekomme ich immer eine "Runtime error 216 at 00018008" wenn ich das programm beende. Könnte es sein das da irgend ein speicherbereich nicht freigegeben wird????
Code:
WordApp ist vom Type _Application. Komischerweise besitzt dieser Type kein Free.
//Aktive Word Instanz holen
GetActiveOleObject('Word.Application').QueryInterface(_Application,WordApp); //Bookmark durch Betrag ersetz EmptyParam := WordApp.Selection.Range; if (WordApp.ActiveDocument.Bookmarks.Exists(bookMark)) Then begin if(DM.OfferDetailView.FieldValues[TEXTMODULEPRICE_PRICE_FIELD] <> Null) Then lPrice := DM.OfferDetailView.FieldValues[TEXTMODULEPRICE_PRICE_FIELD] else lPrice := '0'; Nme := bookMark; WordApp.ActiveDocument.Bookmarks.Item(Nme).Select; WordApp.Selection.TypeText(lPrice); WordApp.ActiveDocument.Bookmarks.Item(Nme).delete; end; jemand eine Ahnung woran es liegen könnte??? |
Re: Runtime Error
Interfaces werden automatisch freigegeben. Das ist vielleicht erst mal wichtig zu wissen.
Delphi-Quellcode:
Die Zeile ist eigentlich Quatsch. EmptyParam ist eine Variable, welche Delphi bereitstellt, damit nicht alle OLEVariant-Parameter übergeben werden müssen. Die Manipulation dieser Variable solltest Du tunlichst unterlassen und dann noch mal testen.
EmptyParam := WordApp.Selection.Range;
|
Re: Runtime Error
Wenn du dein Programm aus der IDE heraus startest, kannst du im Menü "Suchen" den selbsterklärenden Menüpunkt "Laufzeitfehler" benutzen ;-)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:02 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz