AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Komponenten per DLL registrieren

Ein Thema von _frank_ · begonnen am 11. Jun 2006 · letzter Beitrag vom 14. Jun 2006
Antwort Antwort
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#1

Komponenten per DLL registrieren

  Alt 11. Jun 2006, 14:07
Hi,
ich versuche Komponenten über dlls zu registrieren, damit ich die Komponenten-Verwaltung meines DFM-Editors modular erweitern kann.
Mein bisheriger Versuch:

Delphi-Quellcode:
//dll-code
uses
  ...,extCtrls;

procedure registerComp;
begin
  RegisterClass(TShape);
end;

exports
  registerComp;

//Host-code
type
  RegisterComp= procedure;
...
procedure TForm1.Button1Click(Sender: TObject);
var h:THandle;
    p:RegisterComp;
begin
  h:=LoadLibrary('dll_p.dll');
  @p:=GetProcAddress(h,'registerComp');
  if assigned(p) then
  begin
    p;
  end;
  if assigned(getclass('TShape')) then
    showmessage('funktioniert')
  else
    showmessage('funktioniert nicht');
  freelibrary(h);
end;
die DLL-Procedure wird ausgeführt, jedoch ist die klasse nicht registriert (bzw. nur innerhalb des DLL-Adressraumes registriert), denn ich bekomme die Meldung "Funktioniert nicht"...

Jemand eine Idee, wie man das bewerkstelligen kann?

Gruß Frank
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Komponenten per DLL registrieren

  Alt 11. Jun 2006, 17:30
Wird nur funktionieren wenn sowohl Exe als DLL mit Laufzeitpackages arbeiten. Ansonsten haben Exe und DLL komplett unabhängige Objekthierarchien (TObject Exe <> TObect Dll). Es könnte auch sein das es nur funktioniert wenn die DLL ein Delphi-Package ist welches du dynamisch Lädst.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#3

Re: Komponenten per DLL registrieren

  Alt 11. Jun 2006, 22:17
wie erzeuge ich ein solches Package, bzw. wie lad ich das (delphi3)?
Hat da irgendjemand ein funktionierendes Beispiel? hab da zwar funktionen wie LoadPackage gefunden aber hab es noch nicht wirklich zum laufen bekommen.

Gruß Frank
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#4

Re: Komponenten per DLL registrieren

  Alt 14. Jun 2006, 01:41
niemand eine idee oder am besten ein Beispiel?
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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:49 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