Einzelnen Beitrag anzeigen

hanspeter

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

Programm modularisieren

  Alt 15. Feb 2008, 10:03
Ich suche immer noch nach einem gangbaren Weg ein großes Programm zu modularisieren.
Eine reine BPL Lösung ist dazu aus verschiedenen Gründen nicht praktikabel.
Ich habe deshalb mit Hydra von Remobjects experimentiert.
Hier bietet sich die Möglichkeit eine mit Hydra generierte dll auch in ein Net Programm einzubinden.
Bei dieser Lösung bekomme ich jedoch das BPL-Versionsproblem durch die Hintertüre.
Alle Componenten, welche sich mit RegisterClass registrieren, können projektweit nur in einer einzigen dll
eingebunden werden.
Der Umstand ist etwas tückisch, da der Registerfehler vom Ladezeitpunkt der dll abhängig ist.
Damit muss jede Componente mit Registerclass als Laufzeitbibliothek eingebunden werden.

Das Programm kann ich in mehrere unabhängige Teilprojekte zerlegen.
z.B. Reports , Datenpflege u.s.w.
Zur Interprocess-Kommunikation reicht ein record von max. 16 Byte Länge.
Spricht etwas dagegen, eine Modularisierung über EXE Files anzugehen?
Ich habe mir eine Klasse für das Handling über wm_CopyData geschrieben.
Das Modul hat ein nicht sichtbares Fenster. Die Caption ist eine GUID, damit läßt sich das Fenster eindeutig finden.
Das Hauptprogramm startet das Modul über die Shell und übergibt in der Comandline den Datenbank Connectstring.
Ein weiterer Vorteil wäre die Möglichkeit, abhängig von der Kommandozeile das Programm in einem Singlemodus, jetzt
mit einem eigenem Menü zu starten.
Programm und Modul laufen immer auf dem gleichen Rechner.

Hat so eine Lösung mit Exe-Files noch andere Fallstricke, die ich im Moment noch nicht sehe?
Ist wm_CopyData ein gangbarer Weg oder sollten Pipes oder Winsock bevorzugt werden?

Für eine Meinung dankbar.
Mit Gruß
Peter
  Mit Zitat antworten Zitat