AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Packages: Objekte der Parent-Application verursachen Fehler
Thema durchsuchen
Ansicht
Themen-Optionen

Packages: Objekte der Parent-Application verursachen Fehler

Ein Thema von Pfoto · begonnen am 14. Dez 2006 · letzter Beitrag vom 14. Dez 2006
Antwort Antwort
Pfoto

Registriert seit: 26. Aug 2005
Ort: Daun
541 Beiträge
 
Turbo Delphi für Win32
 
#1

Packages: Objekte der Parent-Application verursachen Fehler

  Alt 14. Dez 2006, 22:38
Hallo zusammen,

leider produziert mein (Test-)Programm bei der Verwendung bei einem zur Laufzeit eingebundenen Package einen Fehler.
Dazu benutze ich z.Zt. das Plug-In System von TMS-Software, aber ich denke dies spielt beim Fehler keine Rolle.

Die Situation:
Ich übergebe beim Laden eines Plugins die Referenz auf die Hauptanwendung - soweit so gut.
Das Aufrufen z.B. von simplen Integern aus der Hauptanwendung funktioniert ohne Probleme.

Rufe ich jedoch ein in der Anwendung vorhandenes Objekt auf, entsteht ein Absturz.
Es scheint, als sei das Objekt nicht vorhanden. In meinem Test war es ein simples TFont.

Mein Frage:
Gibt es bei Packages auch diese Einschränkungen wie sie bei DLLs exisitieren?
Der Speicherbereich von Anwendung und Package kann doch gemeinsam (und ohne ShareMem) genutzt werden, oder?


Danke für Eure Hilfe
Pfoto
Jürgen Höfs
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Packages: Objekte der Parent-Application verursachen Feh

  Alt 14. Dez 2006, 22:57
Was für ein Fehler tritt auf?
Zitat:
Der Speicherbereich von Anwendung und Package kann doch gemeinsam (und ohne ShareMem) genutzt werden, oder?
Ja aber ist zu beachten das trotzdem verschiedene Vererbungsschemen vorhanden sind.
Markus Kinzler
  Mit Zitat antworten Zitat
Pfoto

Registriert seit: 26. Aug 2005
Ort: Daun
541 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Packages: Objekte der Parent-Application verursachen Feh

  Alt 14. Dez 2006, 23:09
Der genaue Fehler lautet:
"Zugriffsverletzung bei Adresse ...... im Modul vcl70.bpl"


So sieht übrigens das Interface aus:
Delphi-Quellcode:
   ICustomAppServices = interface
   ['{FC008336-1557-4A5E-963C-5D796E620E64}']
      function GetValue : integer;
      function GetApplication: TApplication;
      function GetFont: TFont;
      property Value : Integer read GetValue;
      property Application: TApplication read GetApplication;
      property Font: TFont read GetFont;
   end;
Im Programm wird z.B. die Font über folgende Funktion geholt:
Delphi-Quellcode:
function TCustomAppServices.GetFont: TFont;
begin
  result:= FFont;
end;
Das Font-Objekt erstelle ich zuvor in der Create-Anweisung von TCustomAppServices...
Delphi-Quellcode:
  TCustomAppServices = class(TupfStandardApplicationServices, ICustomAppServices)
     FFont: TFont;
     function GetValue : integer;
     function GetApplication: TApplication;
     function GetFont: TFont;
     constructor Create;
     destructor Destroy;
  end;
... wobei ich mich gerade frage, ob es denn hier überhaupt eine Create Anweisung gibt,
da im Initialisierungs-Teil des Plug-In Systems "RegisterClass" steht....
Ich werde das mal prüfen

Gruß
Pfoto
Jürgen Höfs
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Packages: Objekte der Parent-Application verursachen Feh

  Alt 14. Dez 2006, 23:19
Existiert auch eine Istanz von TCustomAppServices?
Markus Kinzler
  Mit Zitat antworten Zitat
Pfoto

Registriert seit: 26. Aug 2005
Ort: Daun
541 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Packages: Objekte der Parent-Application verursachen Feh

  Alt 14. Dez 2006, 23:22
Da hast du das richtige angesprochen!
Das war der Fehler!

Dieses PlugIn-System registiert nur eine Klasse,
so dass natürlich meine Create-Anweisung nicht aufgerufen wurde.
Dort hatte ich die Objekte erstellt...
nun wundert mich nichts mehr.

Vielen Dank für den Denk-Anstoß!


Gruß
Pfoto
Jürgen Höfs
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:06 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