Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Fehler bei JEDI-Installation (https://www.delphipraxis.net/43408-fehler-bei-jedi-installation.html)

phlux 21. Apr 2005 15:04

Re: Fehler bei JEDI-Installation
 
Geil :thumb: :thumb: :thumb: Mit der Fake xmlrtl gehts, hab grad erfolgreich die jvcl installiert, jetzt kanns losgehen :firejump:

Kann jemand das mal in die codelib oder so posten? :gruebel:

Robert Marquardt 21. Apr 2005 15:07

Re: Fehler bei JEDI-Installation
 
Probier mal aus ob auch die Komponenteneditoren gehen. Besonders die die DesignIde verwenden.

jbg 21. Apr 2005 15:14

Re: Fehler bei JEDI-Installation
 
Das Problem besteht nur beim Kompilieren, da dcc32.exe die .dcp Dateien "untersucht". Zur Laufzeit der Packages wird dann die .bpl Datei benutzt und die muss ja wegen der IDE vorhanden sein.

phlux 21. Apr 2005 17:27

Re: Fehler bei JEDI-Installation
 
Zitat:

Zitat von Robert Marquardt
Probier mal aus ob auch die Komponenteneditoren gehen. Besonders die die DesignIde verwenden.

welche? :roll: sry hab nicht den überblick bei dem ganzen gelöt, musste bei der installation allerdings den ganzen db kram weglassen, aber is ja normal bei der pe :stupid:

MasterDG 25. Apr 2005 15:36

Re: Fehler bei JEDI-Installation
 
Hallo Leute!

Wieso ist die Fake-XMLRTL legal? Kann ich also mit der PE nach der Lizenz von Borland meine Progs als Freeware vertreiben, die Komponenten benutzten bei denen ich diese Fake-XMLRTL benutzt habe?

Gruß
MasterDG

Robert Marquardt 25. Apr 2005 17:32

Re: Fehler bei JEDI-Installation
 
Natuerlich kannst du nur Programme nach der PE Lizenz machen, aber die xmlrtl.dcp der Trial Version ist nach der Trial-Zeit sicherlich illegal.
Wir werden wahrscheinlich keine Installation fuer die JVCL in D 2005 PE anbieten, um solche Probleme zu vermeiden.

jbg 25. Apr 2005 17:44

Re: Fehler bei JEDI-Installation
 
Zitat:

Zitat von MasterDG
Kann ich also mit der PE nach der Lizenz von Borland meine Progs als Freeware vertreiben, die Komponenten benutzten bei denen ich diese Fake-XMLRTL benutzt habe?

Dummerweise enthält die gefakte xmlrtl.dcp Datei keinen ausführbaren Code. Somit kannst du kein Programm schreiben, dass die Funktionalität der xmlrtl (XmlDom, XmlDoc, XmlIntf, XmlSchema, ...) benutzt, weil diese nicht verfügbar ist (du erntest im Falle einer Nutzung nur eine MessageBox, die dir sagt, dass du die xmlrtl nicht benutzen darfst).

Um es nochmal klar darzustellen (es soll ja Leute geben, die nicht wissen was eine .dcp und was eine .bpl so macht).

Programm mit externen Packages:
Wenn man ein Programm kompiliert, schaut der Compiler in den .dcp Dateien der benötigten Packages nach, welche Units sie enthalten und wie deren Interface-Abschnitte aussehen. Diese Information benutzt er nun, um das Programm gegen die .bpl Dateien zu binden (linken). Danach ist die .dcp Datei für das kompilierte Programm wertlos, weil sie nicht benötigt wird.

Programm ohne externen Packages:
Wenn man ein Programm kompiliert, schaut der Compiler in den .dcp Dateien nach, welche Units sie enthalten und wie deren Interface-Abschnitte aussehen. Danach läd er die in den .dcp Dateien "eingeschweisten" vorkompilierten Units und baut sie in das Programm ein. Die .bpl Datei ist hierbei für das Programm belanglos.

Nun zum xmlrtl Problem mit Delphi 2005 PE
Das Package designide, welches für die Property-Editoren zuständig ist, benötigt von sich aus das Package xmlrtl (irgendwas wird da eben mit XML-Bäumen verarbeitet). Kompiliert man nun ein designtime-Package, welches das designide benötigt (requires), so schaut der Compiler in der designide.dcp nach, welche Units enthalten sind und vor allem er schaut auch nach, welche "requires" Packages die designide besitzt. Deren .dcp Dateien werden dann ebenfalls angeschaut. Und genau hier tritt der Fehler auf. Es existiert keine xmlrtl.dcp Datei.
Dieser Fehler tritt nur bei Packages auf, da es ohnehin nicht erlaubt ist, die designtime Packages von Delphi in einem Programm zu verwenden (Lizenz: redistributable files).

Der Fehler tritt nur beim Kompilieren von designtime Packages auf. Bekommt man schon kompiliere designtime Packages, dann besteht kein Problem, weil die xmlrtl.dcp nur beim kompilieren gegen das designide Package von Bedeutung ist.
Die gefakte xmlrtl.dcp Datei macht nun nichts anderes, als die beiden Pseudo-Units xmlintf.pas und xmldom.pas zu beinhalten, wobei diese aber einige Interfaces (IXmlNode = interface, ...) der original Units enthalten müssen, weil designide diese einsetzt. Interfaces haben aber keinen Code, womit der Implementation Abschnitt, bis auf die MessageBox mit darauf folgendem Halt(0), leer ist. Dem Compiler reicht diese xmlrtl.dcp um das designtime Packages, welches gar nicht direkt mit dem xmlrtl Package zu tun hat, zu kompilieren.

Der Fehler dürfte sich bei Delphi 2005 PE deswegen eingeschlichen haben, weil die PE kein XML von Haus aus unterstützen soll. Also was liegt näher als die xmlrtl.dcp zu entfernen, weil die ja zum Kompilieren gegen die xmlrtl.bpl notwendig ist. Die xmlrtl.bpl wird von der IDE selbst benutzt und ist somit auch in der PE enthalten. Es wurde aber vergessen, dass das designide Package auf der xmlrtl aufbaut und somit die xmlrtl.dcp benötigt.


Ich hoffe, dass diese Erklärung des Problems under Lösung mal ausreicht.

MagicAndre1981 25. Apr 2005 17:56

Re: Fehler bei JEDI-Installation
 
Zitat:

Zitat von Robert Marquardt
Natuerlich kannst du nur Programme nach der PE Lizenz machen, aber die xmlrtl.dcp der Trial Version ist nach der Trial-Zeit sicherlich illegal.
Wir werden wahrscheinlich keine Installation fuer die JVCL in D 2005 PE anbieten, um solche Probleme zu vermeiden.

Hallo Robert,

habt ihr eine Ahnung wozu die Datei xmlrtl.dcp gebraucht wird? Ich hab alles mögliche versucht, bekomme zwar die JCL ohne die Experts installiert, aber die JVCL streikt.

André

jbg 25. Apr 2005 18:38

Re: Fehler bei JEDI-Installation
 
Zitat:

Zitat von MagicAndre1981
habt ihr eine Ahnung wozu die Datei xmlrtl.dcp gebraucht wird?

Ja, das haben wir. Einfach mein letztes Posting lesen.

Zitat:

bekomme zwar die JCL ohne die Experts installiert, aber die JVCL streikt.
Das liegt wohl daran, dass die JCL "nur Klassen" enthält, während die JVCL Komponenten und vor allem Property-Editoren enthält. Das steht aber alles in meinem letzten Posting.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:14 Uhr.
Seite 3 von 3     123   

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