AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

zugriff auf andere formular in dll

Ein Thema von JnZn558 · begonnen am 21. Dez 2010 · letzter Beitrag vom 21. Dez 2010
Antwort Antwort
JnZn558

Registriert seit: 22. Aug 2004
98 Beiträge
 
#1

zugriff auf andere formular in dll

  Alt 21. Dez 2010, 09:07
hab den "Delphi plugin by example" tutorial von Leonardo Blog gelesen und nachgemacht, es funktioniert bis jetzt alles gut. Nun wie mache ich das, wenn ich mehrere verschiedene dll hab, alle ein form haben, der form soll von andere form zugreifbar gemacht werden.

z.B
test1.dll ( export ein form )

test2.dll ( export auch ein form )

beide werden in main.exe dynamisch geladen und bei form von test1.dll

Delphi-Quellcode:
procedure TForm1.OnForm1Create( Sender: TObject);
begin
   objekt_von_form_in_test2_dll.Caption := 'test';
end;
wie bekomme ich den Instanz ( bzw Objekt ), der in main.exe instanziert wird ins test1.dll

meine Intension ist ganz einfach, form in dlls sollen gegenseitig zugreifbar sein ( bzw kommunizieren können ).

jemand ne vorschlag ( Idee ) für mich?

danke für eure Antworten, auch wenn sie nicht hilfreich sind.
Peace on the world
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

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

AW: zugriff auf andere formular in dll

  Alt 21. Dez 2010, 09:14
Wenn du auf "lebende" Objekte zugeifen willst, so musst du die Exe und die DLL's mit Runtime-Packages kompilieren. Entsprechend solltest du dir auch Interfaces/Basisklassen für die DLL's überlegen und auch möglichst viele gemeinsame Klassen in Basis-Packages verlegen.

Diese Lösung wird dann nur funktionieren wenn Exe und DLL's mit der gleichen Delphi/C++-Builder mit gleichen Patch-Level kompiliert wurden.


Ist nicht einfach und wenn man nicht aufpasst kommt man in die BPL-Hölle.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von mschaefer
mschaefer

Registriert seit: 4. Feb 2003
Ort: Hannover
2.032 Beiträge
 
Delphi 12 Athens
 
#3

AW: zugriff auf andere formular in dll

  Alt 21. Dez 2010, 13:00
Bernhard hat das schon angedeutet, das direkter Objektzugriff erhebliche Selbstdisziplien braucht und dazu führt, dass man auch die dll´s im Auge behalten muss, wenn man im Hauptprojekt mit ganz andere Sachen beschäftigt ist. deshalb neige ich dazu den SOA-Ansatz zu verfolgen und dll´s mit xml-Steuerfiles zu versorgen. Die dll muß daraus die entsprechenden Handlungen parsen. Einen Objektzugriff gibt es nicht.

Grüße
Martin Schaefer
  Mit Zitat antworten Zitat
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#4

AW: zugriff auf andere formular in dll

  Alt 21. Dez 2010, 13:07
Bernhard hat das schon angedeutet, das direkter Objektzugriff erhebliche Selbstdisziplien braucht und dazu führt, dass man auch die dll´s im Auge behalten muss, wenn man im Hauptprojekt mit ganz andere Sachen beschäftigt ist. deshalb neige ich dazu den SOA-Ansatz zu verfolgen und dll´s mit xml-Steuerfiles zu versorgen. Die dll muß daraus die entsprechenden Handlungen parsen. Einen Objektzugriff gibt es nicht.

Grüße
Ich gehe hier noch einen Schritt weiter und verwende die Com/ DCom -Technologie.
Mit einem OutofProcess-Server bin ich auch noch die Abhängigkeiten von den unseligen Laufzeit-BPL los.
Da ein OutofProcess-Server auch noch eine eigene Oberfläche haben kann, gestaltet sich der Test einfacher.

Gruß
Peter
  Mit Zitat antworten Zitat
JnZn558

Registriert seit: 22. Aug 2004
98 Beiträge
 
#5

AW: zugriff auf andere formular in dll

  Alt 21. Dez 2010, 18:27
Vielen Dank. Doch die theorie scheint mir ein bisschen zu trocken, versteh es nicht so richtig. wenn ihr ein kleines beispiel skizze machen koennt, kann ich besser verstehen.
Peace on the world
  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 14:45 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