![]() |
Delphi DLL + Formular - Und das Einbinden in andere Programmiersprachen
Ich hätte vor eine Delphi DLL zu schreiben die auch die VCL (Formular) enthält.
Meine erste Frage wäre, ob diese DLL sich problemlos von jeder anderen Windows-basierten Sprache laden ließe(z.b C#, C++, C, VB.net) oder ob es da schon gewisse Sachen gibt die man beachten müsste? Wenn ich jetzt z.B vor hätte die DLL als erstes starten zu lassen, während die DLL noch das Hauptprogramm "sperrt" und erst durch eine Überprüfung (Login/Key ...) freigeschaltet wird. Oder ist das technisch überhaupt nicht möglich? Grüße |
AW: Delphi DLL + Formular - Und das Einbinden in andere Programmiersprachen
Wenn du bei den Datentypen auf COM-basierte (Widestring, WordBool, ...) zurückgreifst, als Aufrufkonvention safecall oder cdecl benutzt und die DLL innerhalb des UI threads des Host-Programms aufrufst, dann sollte dies klappen.
Wäre es nicht einfacher das Formular innerhalb des Host-Programms zu halten und nur die "Logik" in die DLL auszulagern? |
AW: Delphi DLL + Formular - Und das Einbinden in andere Programmiersprachen
Zitat:
|
AW: Delphi DLL + Formular - Und das Einbinden in andere Programmiersprachen
Du hast ja nicht gesagt, wie komplex das Formular sein soll. Aber wenn es nur ein klassisches Loginformular werden soll, dann ist das in WPF oder Swing schnell zusammengebaut. GUI geht ja meistens schnell :)
Zudem hast du nicht diesen Übergang zwischen WPF Formular und VCL. Man sieht schon den Unterschied zwischen Java und Delphi ist das nochmals stärker. Wenn du in deiner Host-Anwendung dann noch irgendwelche Skins benutzt ... Oder du machst eine Zwischenlösung. Du erstellst zwei Funktionen in der DLL, jeweils mit und ohne VCL. Je nachdem implementiert du in der Host-Anwendung dann ein Formular oder eben nicht. |
AW: Delphi DLL + Formular - Und das Einbinden in andere Programmiersprachen
Zitat:
Login/Registrierung ein paar Requests zu einer Datenbank. |
AW: Delphi DLL + Formular - Und das Einbinden in andere Programmiersprachen
Ich habe ziemlich genau sowas mal gemacht, damals noch mit Delphi 7. Die DLL wurde dann aus Visual Basic 6 und aus anderen Delphi-Programmen heraus aufgerufen. (Was anderes haben wir in der Firma damals nicht benutzt).
Wichtig dabei ist die Aufrufkonvention (ich habe stdcall verwendet, weil das das einzige war, was Visual Basic konnte, und die meisten anderen Sprachen das auch irgendwie hinbekommen) und dass die Parameter keine Speicherverwaltung benoetigen (PAnsiChar und einfache Typen). |
AW: Delphi DLL + Formular - Und das Einbinden in andere Programmiersprachen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:35 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