AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein DLL-Formular als Plug-In - oder "richtige" DLL
Thema durchsuchen
Ansicht
Themen-Optionen

DLL-Formular als Plug-In - oder "richtige" DLL

Ein Thema von TheMiller · begonnen am 3. Nov 2006 · letzter Beitrag vom 4. Nov 2006
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#1

DLL-Formular als Plug-In - oder "richtige" DLL

  Alt 3. Nov 2006, 18:57
Hallo,

wollte mein Programm modular aufbauen. Dazu habe ich mir gedacht, Formulare in DLLs auszulagern und beim Starten zu laden. Dann könne ich von dem PlugIn aus direkt auf (zb) ListView1 des Haupprogrammes zugreifen. Könnte ich mit einer richtigen DLL doch nicht - wenn doch - wie??

Nur, wozu gibt es dann DLL-Formulare? Ich könnte doch genausogut die Echse laden, oder? Wo sind hier die Unterschiede und was ist die bessere Plug-In-Lösung...?

Danke im Voraus!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: DLL-Formular als Plug-In - oder "richtige" DLL

  Alt 3. Nov 2006, 19:26
Also entweder du pcakst die Formulare in Bpls oder du mußt Wrapper-Funktionen schreiben.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#3

Re: DLL-Formular als Plug-In - oder "richtige" DLL

  Alt 4. Nov 2006, 14:07
Ok, BPLs find ich richtig schlecht. Ich hab dagegen eine Antipatie... Was sind Wrapper-Funktionen? Aufwendig? Umständlich? Viel?
Und was hälst du/ihr von Formular-DLLs?
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#4

Re: DLL-Formular als Plug-In - oder "richtige" DLL

  Alt 4. Nov 2006, 15:18
Wrapperfunktionen sind Funktionen wie "Form1Listbox1ItemAdd", die du aus der DLL aufrufst, um den modulübergreifenden Zugriff auf die VCL zu verhindern.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#5

Re: DLL-Formular als Plug-In - oder "richtige" DLL

  Alt 4. Nov 2006, 15:22
Aso. Aber ich merke gerade eins:

Ich will ja ein Programm mit PlugIns machen. Diese PlugIns sind ja nicht nur DLLs, die Funktionen hinzufügen, sondern sollen auch die GUI und das Programm visuell erweitern. Also Formulare, die hinzugefügt werden. Kann ich gar keine DLL schreiben, sondern muss soagr ein Formular-DLL nehmen, damit ich auch auf Form1 des Hauptprogramms oder die ZEOS-Komponente zugreifen kann. Doch das mit dem Wrapper habe ich nicht so ganz verstaden. Hast Du ein Beispiel für mich?
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#6

Re: DLL-Formular als Plug-In - oder "richtige" DLL

  Alt 4. Nov 2006, 15:34
Ja.

Angenommen, du willst auf ein Frm zugriefen und darin bei einer listbox etwas hinzufügen. Solltest du das nicht so machen:

Delphi-Quellcode:
//DLL
procedure ListBoxAddText(LB: TListBox);
begin
  LB.AddItem('text',nil);
end;
Sondern so:

Delphi-Quellcode:
//DLL
function GetListBoxAddText: PChar;
begin
  Result := 'text'; //ich weiß jetzt nicht, ob der compiler das umsetzt...
end;

//Hauptprogramm
Listbox1.AddItem(GetListBoxAddText,nil);
Das ist jetzt natürlich nur skizziert und würde höchstwahrscheinlich ein böses Speicherleck hinterlassen...
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: DLL-Formular als Plug-In - oder "richtige" DLL

  Alt 4. Nov 2006, 17:03
Zitat:
Ok, BPLs find ich richtig schlecht. Ich hab dagegen eine Antipatie... Was sind Wrapper-Funktionen? Aufwendig? Umständlich? Viel?
In diesem Fall wären Bpls aber optimal (nicht als Laufzeitpackages gegen die gelinkt wird).
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#8

Re: DLL-Formular als Plug-In - oder "richtige" DLL

  Alt 4. Nov 2006, 17:11
Hm...

Kann ich nicht einfach von einem DLL Formular auf die Zeos-Komponente oder andere Komponenten zugreifen? Ich meine, ein DLL-Formular muss ja auch irgendeinen Sinn haben...

Und die DLL ist ja nicht ohne die Hauptanwendung lauffähig, also abhängig von ihr. Da muss ich doch sowas wie "Form1.ZQuery.Close" vom DLL-Formular aus machen können!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: DLL-Formular als Plug-In - oder "richtige" DLL

  Alt 4. Nov 2006, 17:15
Zitat:
Und die DLL ist ja nicht ohne die Hauptanwendung lauffähig, also abhängig von ihr. Da muss ich doch sowas wie "Form1.ZQuery.Close" vom DLL-Formular aus machen können!
Nein geht nicht! Nur bei Bpls, da Borland den Übergabemechansimus von Dlls dementsprechend geändert hat.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#10

Re: DLL-Formular als Plug-In - oder "richtige" DLL

  Alt 4. Nov 2006, 17:19
Mist. Gibt es da eine Möglichkeit irgendwie in der Art zuzugreifen oder ist das wieder die Geschichte mit der Wrapper-Funktion?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 15:32 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