DLL
Moderator: Moderatoren
- Martin Altmann
- Foren-Administrator
- Beiträge: 16517
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Hallo Tom,
für eine EXE habe ich doch keine LIB - oder verstehe ich da was in Deinem Posting nicht?
Du schreibst, dass Du bei einer EXE und 5 DLLs jeweils die 5 LIBs einbindest:
Bei dem Abschnitt für die EXE ist das OK, da gibt es ja 5 DLLs und somit 5 LIBs.
Aber bei einer DLL? Da gibt es doch nur eine EXE und vier weitere DLLs, also vier LIBs - oder wie?
Wie gesagt, ich mache das nicht, da ich nur DLLs von Alaska, 3pps oder anderen Fremdanbietern nutze...
Viele Grüße,
Martin
für eine EXE habe ich doch keine LIB - oder verstehe ich da was in Deinem Posting nicht?
Du schreibst, dass Du bei einer EXE und 5 DLLs jeweils die 5 LIBs einbindest:
Bei dem Abschnitt für die EXE ist das OK, da gibt es ja 5 DLLs und somit 5 LIBs.
Aber bei einer DLL? Da gibt es doch nur eine EXE und vier weitere DLLs, also vier LIBs - oder wie?
Wie gesagt, ich mache das nicht, da ich nur DLLs von Alaska, 3pps oder anderen Fremdanbietern nutze...
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- AUGE_OHR
- Marvin
- Beiträge: 12909
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
hi,
es gibt wohl scheinbar verschiedene Methoden eine DLL zu erzeugen.
Ich mache es so wie unter Cl*pper : Erst *.LIB mit *.DEF File erzeugen
und daraus dann die DLL. Wer schon den Source zu meinem WMPlayer
hat kann sich das ja mal ansehen den ich hab ja den MAIN Source und
die LIB anbei gegelegt so das man sich das selbst zusammenbauen kann.
gruss by OHR
Jimmy
es gibt wohl scheinbar verschiedene Methoden eine DLL zu erzeugen.
Ich mache es so wie unter Cl*pper : Erst *.LIB mit *.DEF File erzeugen
und daraus dann die DLL. Wer schon den Source zu meinem WMPlayer
hat kann sich das ja mal ansehen den ich hab ja den MAIN Source und
die LIB anbei gegelegt so das man sich das selbst zusammenbauen kann.
gruss by OHR
Jimmy
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1930
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
- Jan
- Marvin
- Beiträge: 14658
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
So, an alle, die hierbei mitgeholfen haben:
Die Lösung steht. Der Tipps von Tom waren die Richtigen. In jeder DLL Verweise auf die anderen DLL im Projekt. ALLES, was aus den DLL heraus aufgerufen wird, ebenfalls in eine DLL packen.
Wobei VX das leider nicht selbständig verwaltet. Ich muß mich also um den Abschnitt "// $START-AUTODEPEND " doch noch manuell kümmern. Aber das geht in VX zum Glück auch relativ einfach.
Auch wenn das leider nicht bewirkt, daß Aufrufe aus der DLL auf Funktionen in der EXE gehen Das wär zu schön gewesen.
Danke für alle Hinweise, auch wenn sie ab und an etwas irreführend waren. Der Wille zu helfen zählt
Jan
Die Lösung steht. Der Tipps von Tom waren die Richtigen. In jeder DLL Verweise auf die anderen DLL im Projekt. ALLES, was aus den DLL heraus aufgerufen wird, ebenfalls in eine DLL packen.
Wobei VX das leider nicht selbständig verwaltet. Ich muß mich also um den Abschnitt "// $START-AUTODEPEND " doch noch manuell kümmern. Aber das geht in VX zum Glück auch relativ einfach.
Auch wenn das leider nicht bewirkt, daß Aufrufe aus der DLL auf Funktionen in der EXE gehen Das wär zu schön gewesen.
Danke für alle Hinweise, auch wenn sie ab und an etwas irreführend waren. Der Wille zu helfen zählt
Jan
Zuletzt geändert von Jan am Mi, 21. Nov 2007 19:33, insgesamt 1-mal geändert.
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
darüber streiten sich die GeisterRolf Ramacher hat geschrieben:Hi,
wann ist eine Erstellung einer DLL sinnvoll und welchen Vorteil bietet diese, anstatt die PRG's in die Xpj mit zu kompilieren.??
CONTRA DLL: die einen sagen 'alles in eine EXE und ich habe keinen Ärger' (da gehöre ich auch dazu ) - das ist auch völlig OK, solange es kleine Programme sind (meine EXE sind unter 5 MB), allerdings soll es Programme geben, die mehrere 100 MB groß sind
PRO DLL: andere haben wirklich große Programme und anspruchsvolle Kunden ...
Das Hauptprogramm z.B. sieht bei allen gleich aus (EXE), aber nicht alle haben alle Module (DLL) gekauft. Das Hauptprogramm könnte also durch Nachinstallation von DLL Dateien Programmroutinen nachrüsten.
Oder aber ein Programm bietet 2 z.B. Kundenverwaltungen eine 'normale' und eine 'besondere' auch hier müsste nur die DLL getauscht werden.
Man könnte auch Festplattenspeicher sparen in dem man eigene Routinen in DLL auslagert und von mehreren Programmen heraus aufruft. Das hat dann allerdings zur Folge, dass immer alle EXE + DLL zusammen auf neue Versionen (Xbase++) gebracht werden müssen.
Meine Programme sind klein genug, dass ich damit keine Probleme habe (die Runtime DLLs sind ja ausgelagert), TOM würde mit seinem Riesenprogramm sicherlich kein Land sehen ohne DLL Aufteilugn - oder ?
Gruß
Hubert
Hubert
- Jan
- Marvin
- Beiträge: 14658
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Ich selber habe die Aufteilung aus 2 Gründen gemacht:
1) Und das war die Idee, die ich von der DevCon mitgenommen hatte: Wenn irgendetwas im Code korrigiert wurde (Fehlerbehebung), oder etwas Neues dazugekommen ist, dann muß ich nicht die komplette Applikation per Mail verschicken, sondern nur die kleineren DLL aus dem entsprechenden Bereich.
2) Wie Hubert schon angesprochen hat: Wenn jemand die Extended Version haben möchte, dann ist das nicht ein komplett anderes Programm, der bekommt einfach eine zusätzliche DLL. Und das Programm erkennt, daß die da ist, und blendet dann die entsprechenden Menüpunkte ein.
Klar ließe sich auch trotzdem über diese beiden Punkte trefflich streiten. Aber für mich scheint da einfach die bessere Lösung zu sein. Auch wenn das Umrüsten mich und einige andere hier im Forum gestern einige Nerven gekostet hat.
Jan
1) Und das war die Idee, die ich von der DevCon mitgenommen hatte: Wenn irgendetwas im Code korrigiert wurde (Fehlerbehebung), oder etwas Neues dazugekommen ist, dann muß ich nicht die komplette Applikation per Mail verschicken, sondern nur die kleineren DLL aus dem entsprechenden Bereich.
2) Wie Hubert schon angesprochen hat: Wenn jemand die Extended Version haben möchte, dann ist das nicht ein komplett anderes Programm, der bekommt einfach eine zusätzliche DLL. Und das Programm erkennt, daß die da ist, und blendet dann die entsprechenden Menüpunkte ein.
Klar ließe sich auch trotzdem über diese beiden Punkte trefflich streiten. Aber für mich scheint da einfach die bessere Lösung zu sein. Auch wenn das Umrüsten mich und einige andere hier im Forum gestern einige Nerven gekostet hat.
Jan