AGB  ·  Datenschutz  ·  Impressum  







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

Plugins mit BPL Packages realisieren

Ein Thema von cytrinox · begonnen am 28. Jun 2007 · letzter Beitrag vom 28. Jun 2007
Antwort Antwort
cytrinox

Registriert seit: 4. Sep 2006
88 Beiträge
 
#1

Plugins mit BPL Packages realisieren

  Alt 28. Jun 2007, 10:08
Hi,

ich will ein Programm mit Plugins erweitern können, das funktioniert mit BPLs auch ganz gut.
Was mich aber etwas stuzig macht, ist die Sache mit dem require im BPL.

Ich muss ja das Hauptprojekt mit Runtime Packages kompilieren.
Danach muss die *.exe mit den einzelnen *.bpl files (rtl.bpl indycore.bpl usw..) beim Kunden installiert werden.

Will ich nun z.B. nachträglich ein Plugin erstellen, dass z.B. irgendwelche XML Funktionen o.ä. benutzt - wo bekomm ich auf dem Kundenrechner dann die benötigten Packages her? Eigentlich hab ich nur vor die *.bpl Datei als Plugin auszuliefern, aber wenn die BPL irgendwelche anderen BPLs benötigt, müsste ich die ja auch irgendwie nachliefern, oder?

Wenn das so wäre, haut das das ganze Plugin-System in die Tonne, noch schlimmer wärs, wenn man auch die *.exe Datei nochmal neu ausliefern müsste - dann kann man sich die Plugin-Sache ja gleich sparen...
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

Re: Plugins mit BPL Packages realisieren

  Alt 28. Jun 2007, 10:28
Wenn deine Anwendung und dein Plugin nicht grosse Teile der VCL in Packages auslagert, sondern jeweils dazulinkt, dann ist der Programmcode ja mehrfach auf der Festplatte und im Speicher.

Also müssen jede Menge Runtime-Packages (VCLxx, VCLDBxx, ) installiert werden.
So ein Plug-In System muss von Anfang an gut geplant sein, ansonsten ist es wie du richtig erkannt hast sinnlos.
Andreas
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: Plugins mit BPL Packages realisieren

  Alt 28. Jun 2007, 10:36
Es ist genau das gleiche Spiel wie mit DLL's (BPL's sind nicht viel anders). Wenn eine DLL eine andere DLL benötigt, mußt du beide mit ausliefern. Da BPL's im Grunde nichts anderes sind, verhält es sich da auch so.

Du mußt also die entsprechenden BPL's mit ausliefern, sofern sie nicht schon beim Kunden installiert sind. An und für sich auch logisch.

Wenn du ein neues Plugin schreibst, das XML nutzt (XML.bpl), dann braucht dein Plugin ja irgendwoher die Funktionen, Objekte und Komponenten die in der XML.bpl stecken. Folglich braucht ein Plugin die XML.bpl.

Ich hatte mal ein Beispiel (aus dem Entwickler-Mag), wo so ein system beschrieben wird..werd mal suchen.
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Plugins mit BPL Packages realisieren

  Alt 28. Jun 2007, 10:44
Bpls sind Dlls, welche Delphitypen im Interface erlauben. bei der Verwendung eine Bpl musst du aber die gesammte VCL/RTL usw. auch mitgeben, da die Exe dann mit "Laufzeitbibliotheken" gelinkt werden muß.
Markus Kinzler
  Mit Zitat antworten Zitat
cytrinox

Registriert seit: 4. Sep 2006
88 Beiträge
 
#5

Re: Plugins mit BPL Packages realisieren

  Alt 28. Jun 2007, 13:23
gut, wenn die *.exe in Verzeichnis X liegt, das Plugin in Verzeichnis Y, kann ich in der *.exe den Suchpfad so ändern, dass er nach eventuell fehlenden *.bpl Dateien im Verzeichnis Y sucht? dann könnte ich die *.bpls direkt mit meiner eigenen Plugin-BPL in ein Verzeichnis installieren.
  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 05:33 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