![]() |
Delphi-Version: 2005
.net-Formular in Delphi-Formular einbetten
Nachdem ich
![]() |
AW: .net-Formular in Delphi-Formular einbetten
Versuch mal Handle der Delphiform als Parent setzen
|
AW: .net-Formular in Delphi-Formular einbetten
Stellt sich nur die Frage, wo ich das Parent hier setzen soll
Delphi-Quellcode:
CoffeeBar hat keine Eigenschaft Parent...
procedure TForm1.Button1Click(Sender: TObject);
var CoffeeBar: ICoffeeBarController; Result: Integer; begin CoffeeBar := CreateComObject(CLASS_CoffeeBarController) as ICoffeeBarController; CoffeeBar.AddBean('A'); CoffeeBar.AddBean('B'); CoffeeBar.AddBean('C'); CoffeeBar.OpenCoffeeBar; end; |
AW: .net-Formular in Delphi-Formular einbetten
Es sollte aber die .setParent() Methode verfügbar sein
|
AW: .net-Formular in Delphi-Formular einbetten
Liste der Anhänge anzeigen (Anzahl: 1)
Nicht wirklich. siehe Anhang
|
AW: .net-Formular in Delphi-Formular einbetten
|
AW: .net-Formular in Delphi-Formular einbetten
Problem ist nur, dass ich das Handle für CoffeeBar nicht kenne...
|
AW: .net-Formular in Delphi-Formular einbetten
Hast du Zugriff auf den c# Source?
Sonst könntest du versuchen ihn per FindWindow() zu ermitteln |
AW: .net-Formular in Delphi-Formular einbetten
Zitat:
|
AW: .net-Formular in Delphi-Formular einbetten
Am einfachsten geht sowas mit
![]() Das kann genau solche Sachen ziemlich einfach erledigen. Kostet aber auch was. Kommt halt drauf an wie teuer es ist, das ganze Managed/Unmanaged interop selber hinzufrickeln und ob es günstiger wäre, einfach hier und dort seine Forms zusammenzuklatschen und mit Hydra gegenseitig einzublenden. |
AW: .net-Formular in Delphi-Formular einbetten
Tja, was soll ich dazu sagen. Wir haben Auftrag erhalten, es zunächst ohne Hydra zu versuchen...
|
AW: .net-Formular in Delphi-Formular einbetten
Wow.. wegen zwei bis maximal drei Personentagen (durchschnittlicher interner Entwickler-Satz) an Lizenzkosten? Okay.. plus etwas Einarbeitungszeit. Ich würde trotzdem sagen dass die Lizenz inkl. Einarbeitungszeit billiger ist als eine Person da vier Tage dranzusetzen, wenn hinterher nicht was rauskommt das universell wiederverwendbar ist. ;-) Zumal da ja noch Support für ein Jahr drin ist.
Aber das müsst ihr freilich für Euch selber kalkulieren. |
AW: .net-Formular in Delphi-Formular einbetten
Da die Lizenz mit 499 USD pro Entwickler doch etwas hoch ist (immerhin haben wir hier über 30 Delphi-Lizenzen...) versuchen wir doch erst mal selbst eine Lösung zu finden. Ich bin für weitere Vorschläge/Hinweise/Tipps dankbar.
|
AW: .net-Formular in Delphi-Formular einbetten
Zitat:
|
AW: .net-Formular in Delphi-Formular einbetten
kann ich mir schlecht vorstellen. Jeder Entwickler muss in der Lage sein eine voll funktionsfähige exe-Datei zu erstellen, die sowohl Win32- als auch .net-Formulare enthält. Und das für eine recht lange Übergangszeit. BTW: Und jeder Entwickler muss im Prinzip auch beide Arten von Formularen berarbeiten können, d.h. muss also Delphi als auch VS auf seinem Rechner haben.
|
AW: .net-Formular in Delphi-Formular einbetten
Zitat:
|
AW: .net-Formular in Delphi-Formular einbetten
Ich habe mit Hydra einiges probiert und war nicht so ganz glücklich.
Die Masse der Probleme entsteht mit den notwendigen Laufzeit-BPL. Desweiteren sollte man bedenken, das die Hydra - Lizenz wohl eine Jahreslizenz ist. Spätestens mit der nächsten Delphi-Version fallen wieder Kosten an. Zwischenzeitlich habe ich mir ein kleines Plugin-System gebaut, welches auf Basis von Exe-Dateien arbeitet. Da die Programme grundsätzlich auf dem gleichen Rechner und im gleichen Verzeichnis laufen macht die UAC keine Probleme. Parameter werden über die Aufrufzeile übergeben. So z.B. auch das Window-Handle des Hauptfensters. Verwende ich dieses als Parent, ist das gestartete Programm praktisch eingebettet. Das gestartete Programm wird überwacht, sodass ich auf der Aufrufseite einen modalen Aufruf realisieren kann. Bei Programmende werden alle vom Hauptprogramm gestarteten Satelittenprogramme beendet. Die Vorgehensweise hat ein paar Vorteile. Einmal die völlige Unabhängigkeit von Delphi-Version und Laufzeit-BPL. Der Anwender findet es gut, einzelne Module auch separat starten zu können. Die externen Module lassen sich mit einer Com-Schnittstelle (outofprocess) ergänzen. Gruß Peter |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz