AGB  ·  Datenschutz  ·  Impressum  







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

PlugIn-System

Ein Thema von Tossi65 · begonnen am 12. Nov 2010 · letzter Beitrag vom 15. Nov 2010
Antwort Antwort
Seite 1 von 3  1 23      
Tossi65

Registriert seit: 5. Mär 2005
21 Beiträge
 
Delphi 7 Enterprise
 
#1

PlugIn-System

  Alt 12. Nov 2010, 06:49
Hallo Leute,
ich weiss, das Thema ist schon vorhanden. Aber für mich eben neu und echt interessant.
Ich will meine Anwendung in Module(PlugIns) aufteilen. Das einlesen der Module in eine
Liste ist da nicht das Problem. Und da hänge ich fest. In einem Modul können mehrere Forms
sein, welche ich auch in eine Liste aufführen möchte. Nur wie. Wie komme ich bei Modul init.
an die dran?

Was macht eigentlich RegisterClass?? Komme ich damit weiter?

In den Projekten habe ich etwas von PlugIn-System V3.x gelesen, aber leider mann man
es nicht mehr dowloaden. Hat das noch jemand??
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#2

AW: PlugIn-System

  Alt 12. Nov 2010, 07:51
Was meinst Du mit Modulen? Dynamisch geladene DLL's?
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
hanspeter

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

AW: PlugIn-System

  Alt 12. Nov 2010, 08:32
Lass die Finger von Delphi und Plugin. Du handelst dir nur Probleme und null Nutzen ein.
Das dll/bpl Konzept von Delphi ist so verkorkst, das ein enormer Aufwand notwendig ist, um ein System lauffähig zu halten.
Dank RegisterClass funktioniert das ohnehin nur, wenn man mit Laufzeit-BPL arbeitet.
Da zieht man sich aber eine BPL Hölle an Land, gegen die die alte Dll Hölle ein Kinderspiel ist.
Wen ein modulares System geplant ist, dann würde ich mir entweder in Delphi die Com-Technologie anschauen oder auf ein moderneres Programmiersystem wechseln.
Wenn Altlasten kein Hinderungsgrund darstellen, würde ich über NET nachdenken. Mit Prism ist man da nicht weit vom in die Jahre gekommenen Delphi - Sprachstandard weg.
Ich habe mal ein Programmsystem auf das kommerzielle Plugin-System Hydra von Remobjects umgestellt. Damit bin ich letztendlich so auf die Nase gefallen, dass ich jetzt wieder Riesen-Exe Files ausliefere.
Die funktionieren dafür aber stabil.

Gruß
Peter
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#4

AW: PlugIn-System

  Alt 12. Nov 2010, 10:45
Lass die Finger von Delphi und Plugin. Du handelst dir nur Probleme und null Nutzen ein.
Das dll/bpl Konzept von Delphi ist so verkorkst, das ein enormer Aufwand notwendig ist, um ein System lauffähig zu halten.
Ich sehe das ganze etwas anders. Ich habe für mein Programm Code-Orakel ebenfalls ein PlugIn-System mit DLL's gemacht. Es funktioniert sehr gut und is dazu auch noch perfomant. Mit Interfaces kann ich ein recht gutes PlugIn-System aufbauen.

Da aber Tossi65 nicht gesagt hat, wie groß es ist und wie komplex es werden soll, finde ich sollten wir Ihm bei seinem Problem helfen.

@Tossi:
Willst Du mit den modularen Fenstern nur einzelne Config-Dialoge anzeigen oder sollen das ganze Programmteile sein ? Ein bisschen Code wäre ebenfalls nicht schlecht, damit wir sehen wie Du die DLL's lädst und wie Du die bisherigen Abfragen machst. Benuttzt Du Interfaces oder lädst Du die DLL's dynamich oder statisch ?
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Tossi

Registriert seit: 6. Jul 2003
Ort: Weserbergland
20 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: PlugIn-System

  Alt 12. Nov 2010, 14:25
Wow???

Hey, die Diskussion sieht besser aus als die letzten, danke!!!

Ich will ganze Programmteile so steuern. Z.B. eine Adressverwaltung oder Rechnungsverwaltung.
Ich habe so etwas schon einmal gesehen, aber das reicht mir nicht. Ich will es auch verstehen.

Beim Programmstart soll ein Loader alle gefundenen Module(Dll) in eine Liste sopeichern und die
in den Modulen enthaltenen Formulare in eine weitere Liste. So hatte ich es mir gedacht.

@RWarneke
Ich möchte die Programmteile dynamisch laden. Ist ein Modul nicht da, gibt es halt den Programmteil nicht.
So kann man eine Adressverwaltung immer weiterentwickeln bis zu einen WaWi!!!!


Und danke für Eure Unterstützung

Thx
Tossi

Geändert von Tossi (12. Nov 2010 um 14:34 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.198 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: PlugIn-System

  Alt 12. Nov 2010, 14:35
Wenn die Schnittstelle der DLL C-Kompatible ist dann hast du auch kein Probleme mit der "BPL-Hölle". Jedoch darfst du dann auch kein "lebenden" Objekte übertragen.

Machen wir seit jahren und bis darauf das die DLL's mitlerweile ziemlich groß sind läuft es auch ganz gut.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
shmia

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

AW: PlugIn-System

  Alt 12. Nov 2010, 14:44
Plugins, die eine bestimmte Verarbeitung vornehmen und keine eigene Oberfläche (Formulare) haben funktionieren als ActiveX/COM-Plugin recht gut.
Beispiele:
* Bildmanipulation - das externe Plugin bekommt ein Bitmap und schickt ein verändertes Bitmap (Weichzeichner, ...) zurück.
* Import-Plugin - das Plugin bekommt eine Datei mit best. Format und liefert die Daten aufbereitet zurück

Was überhaupt nicht gut funktioniert sind Plugins die ihre eigenen Formulare mitbringen und als Teil der Anwendung agieren sollen.
Grund: die VCL gibt es dann mehrfach in der Hauptanwendung und im Plugin.
Die beiden Instanzen der VCL kennen sich gegenseitig nicht und das macht Probleme.

Plugins machen nur dann Sinn, wenn es von einer bestimmten Pluginart mehrere Varianten gibt.
Also mehrere Plugins für Bildmanipulation oder Datenimport.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

AW: PlugIn-System

  Alt 12. Nov 2010, 14:46
Eventuell wäre auch ein fertiges Plugin-Framework interessant.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#9

AW: PlugIn-System

  Alt 12. Nov 2010, 15:24
Ich pflege seit 10 Jahren eine von mir erstellte Anwendung bei der rund 15 Module als DLL nachgeladen werden können (die Kunden des Kunden sollen bekommen was sie bezahlen wollen). Da die Module allen beinhalten was normale Anwendungen auch beinhalten, sich auch im Hauptmenü integrieren, die DLL's mit der Hauptanwendung und untereinander kommunizieren müssen, mußte ich die Erstellung mit Laufzeitpackes wählen. Dies alles ist mit einem selbst erstellen DLL-Template relativ problemlos und und schnell zu implementieren.
Ich würde es heute trotzdem nicht mehr so machen und die Modularität anders umsetzten. Ich klebe mit der Anwendung bis zum Sankt Nimmerleinstag auf Delphi 7 fest, da niemand eine Umstellung aller Einzelmodule auf eine aktuelle Version bezahlen würde. Das heißt auch neue Plugins müssen mit der Uraltverion nachgerüstet werden.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Tossi

Registriert seit: 6. Jul 2003
Ort: Weserbergland
20 Beiträge
 
Delphi 7 Enterprise
 
#10

AW: PlugIn-System

  Alt 12. Nov 2010, 16:32
@Brummi
Ja so ähnlich hatte ich mir das auch gedacht. Die Sache mit den BPL's kenne ich auch. Aber gibt es denn alternativen??
Natürlich wäre es besser wenn die Packages in den Modulen mit drin wären, aber dadurch werden diese riesen gross.

Ohne die Module gäbe es eine Anwendung nur mit einer MainForm. Mehr nicht. Ist ein Adressmdul vorhanden, dann kann ich
eben Adressen verwalten. Natürlich findet die gesamte Be- und Verarbeitung in den Modulen statt, auch visuell(Forms)!!

Thx
Tossi
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 17:56 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