AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Projekt in DLL wandeln. Frage zur Höh des Aufwands
Thema durchsuchen
Ansicht
Themen-Optionen

Projekt in DLL wandeln. Frage zur Höh des Aufwands

Ein Thema von McMorton · begonnen am 1. Mai 2006 · letzter Beitrag vom 2. Mai 2006
Antwort Antwort
McMorton

Registriert seit: 8. Mär 2006
45 Beiträge
 
#1

Projekt in DLL wandeln. Frage zur Höh des Aufwands

  Alt 1. Mai 2006, 21:16
Hallo

Ist es möglich ein bestehendes Projekt (viele Units, ohne Form) in eine DLL zu wandeln?
Die Dll sollte dann auch z.B. unter Visaul Basic laufen können.

Das Projekt hat momentan 2 Klassen, die nach aussen sichtbar sind (darunter befinden sich noch ca. 100 andere).
Hier werden Strings und Objekte übergeben bzw. zurückgegeben.

Das ganze in ein Package zu packen funktioniert. Aber interessant währe halt eine universelle Dll.

Ich wollte erstmal nachfragen, ob das ohne allzu großen Aufwand überhaupt machbar ist, bevor ich mich in das Thema einarbeite.

Danke schonmal für eure Antworten
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Projekt in DLL wandeln. Frage zur Höh des Aufwands

  Alt 1. Mai 2006, 21:19
Da das Interface dann nur aus 2 Klassen besteht, ist das grundsätzlich möglich. es kommt natürlisch auch auf die Anzahl der Eigenschaften/Methoden an, welche übergeben können werden müssen.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Projekt in DLL wandeln. Frage zur Höh des Aufwands

  Alt 1. Mai 2006, 21:35
Zitat von McMorton:
Ist es möglich ein bestehendes Projekt (viele Units, ohne Form) in eine DLL zu wandeln?
Die Dll sollte dann auch z.B. unter Visaul Basic laufen können.

Das Projekt hat momentan 2 Klassen, die nach aussen sichtbar sind (darunter befinden sich noch ca. 100 andere).
Hier werden Strings und Objekte übergeben bzw. zurückgegeben.

Das ganze in ein Package zu packen funktioniert. Aber interessant währe halt eine universelle Dll.
Objekte aus DLL's zu exportieren ist keine gute Idee. Entweder Handles welche per Mapping Objekte referenzieren und eine C-Schnittstelle bereitstellen oder per COM ein Automatisierungsobjekt mit Interfaces bereitstellen. Wird zwar auch eine DLL aber eine per COM anzusprechende.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
McMorton

Registriert seit: 8. Mär 2006
45 Beiträge
 
#4

Re: Projekt in DLL wandeln. Frage zur Höh des Aufwands

  Alt 1. Mai 2006, 22:24
Hier mal ein Beispiel wie das nach aussen sichtbare Objekt aussieht (das ganze ist im Prinzip ein Indy-Server)

Es gibt ungefähr noch 30 weitere Properties (habe die wegen der Übersichtlichkeit weggelassen), die ein spezielles Objekt zurückgeben (TmyEmpfangenEvent1, TmyEmpfangenEvent2, ...)

Delphi-Quellcode:
 TKommunikation = class(TObject)
  private
    FPort: Integer;
    FIp: String;
    FOnError: TmyErrorEvent;
    FOnEmpfangen: TmyEmpfangenEvent;
    procedure StartServer(Status: boolean);
    procedure Senden(aString: String);
  public
    Property Port: Integer read FPort write FPort;
    Property IP: String read FIp write FIp;
    Property Starten: boolean write StartServer;
    Property SendeString: String write Senden;
    Property OnError: TmyErrorEvent read FOnError write FOnError;
    Property OnEmpfangen: TmyEmpfangenEvent read FOnEmpfangen write FOnEmpfangen;
    constructor Create;
    destructor Destroy; override;
  end;
Wie umfangreich währe es, das in einer DLL zu machen?
Handels und Mappen von Objekten sagt mir erstmal nichts.
Mir gehts erstmal nur darum den Aufwand abzuschätzen.
Wenn ich nähmlich alles umschreiben muss, dann lass ich es lieber sein (währe nur ein nice-to-have-Feature)
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Projekt in DLL wandeln. Frage zur Höh des Aufwands

  Alt 1. Mai 2006, 22:30
Zitat von McMorton:
Es gibt ungefähr noch 30 weitere Properties (habe die wegen der Übersichtlichkeit weggelassen), die ein spezielles Objekt zurückgeben (TmyEmpfangenEvent1, TmyEmpfangenEvent2, ...)
Events kommen auch noch dazu?
Dann vergiss die "universelle" DLL und lese dich erst mal ins Thema Automatisierung + COM ein.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

Re: Projekt in DLL wandeln. Frage zur Höh des Aufwands

  Alt 1. Mai 2006, 22:32
Grundsätzlich mußt du für jede Methode der Klasse eine c-kompatible Funktion erzeugen, da in einer Dll keine Delphi-Objekte übergeben werden können. In deinem fall sind es ja nurPproperties und keine Methoden.
Markus Kinzler
  Mit Zitat antworten Zitat
McMorton

Registriert seit: 8. Mär 2006
45 Beiträge
 
#7

Re: Projekt in DLL wandeln. Frage zur Höh des Aufwands

  Alt 2. Mai 2006, 22:03
OK.
Danke für eure Mühe.
Ich werd mir das ganze wohl schenken. Die Einarbeitung würde zuviel Zeit ziehen.

Packe es dann halt nur als Package
  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 08:44 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