Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Plugins Dateitypen und Parser (https://www.delphipraxis.net/132504-plugins-dateitypen-und-parser.html)

Alaitoc 14. Apr 2009 10:32


Plugins Dateitypen und Parser
 
Tach zusammen,

ich habe ein etwas komplizierteres Problem, denke ich zumindest :gruebel:

Ich habe ein Programm, dass verschiedene Dateien verschiedener Dateitypen
in ein Universalformat umwandelt, das man dann beliebig in die anderen Dateitypen konvertieren
kann und auch in einer Datenbank sichern kann. Natürlich geht das Ganze auch umgekehrt.
Jeder Dateityp hat seinen eigenen Parser, der aus dem Inhalt der Datei, Tokens erstellt die danach in das Universalformat konvertiert werden. Jedoch wäre es um einiges hilfreicher, wenn für jeden Dateityp ein Plugin zum Einbinden fürs Programm vorhanden wäre. Das Problem dabei ist, dass die Tokens ja Objekte sind und das verträgt sich ja bekanntlich nicht gut z.b. mit DLL's.

Hat jemand ne Idee wie ich das lösen könnte?

Falls etwas unklar ist, fragen!

Schonmal vielen Dank :)

MfG Alaitoc

Bernhard Geyer 14. Apr 2009 10:40

Re: Plugins Dateitypen und Parser
 
Entweder du verwendest gemeinsame Runtimepackages für Exe und DLL oder du überlegst dir eine Seralisierung deiner Objekte.

Pfoto 14. Apr 2009 10:42

Re: Plugins Dateitypen und Parser
 
Hallo,

ich hatte mich auch mal damit beschäftig und folgenden Beitrag von
Andreas Kosch gefunden, den ich als sehr nützlich empfand:

http://entwickler-forum.de/showthread.php?t=24504

Dort holt er ein Objekt aus einer DLL über eine zuvor festgelegte
Schnittstelle.


Gruß
Jürgen

Alaitoc 14. Apr 2009 10:54

Re: Plugins Dateitypen und Parser
 
Hm schonmal Danke,
das Problem ist nur dann...wie kriege ich mein FileToken aus dem Parser in die Konverter Dll?
In dem FileToken sind halt die Dateiinformationen enthalten und dann noch alle UnterToken, also Werte, Achsen, etc..


MfG Alaitoc

phreax 14. Apr 2009 11:10

Re: Plugins Dateitypen und Parser
 
Liste der Anhänge anzeigen (Anzahl: 1)
Du kannst auch Interfaces nutzen, um deine Klassen anzusprechen, dazu musst du aber entsprechende Wrapper schreiben.
Zusätzlich ist zu beachten dass statt Delphi-Strings Widestrings verwendet werden sollten (hat imho was mit der Referenzzählung zu tun).
Im Anhang hab ich dir mal ein kleines Testprojekt mit einem StringList-Wrapper angehängt.

HTH phreax

Alaitoc 14. Apr 2009 11:39

Re: Plugins Dateitypen und Parser
 
Hm soweit ja ganz in Ordnung...aber ich versteh nicht ganz wie mir das nun bei den Tokens helfen soll :gruebel:
Das FileToken besteht ja halt aus mehreren Informationen und es hat ja auch noch andere Token in sich (also andere Objekte).

phreax 14. Apr 2009 19:17

Re: Plugins Dateitypen und Parser
 
Ja in diesem Fall müsstest du imho für alle Unterklassen wieder Interfaces erstellen die dann im großen Token-Interface zusammenlaufen.
Da die Tokens sich ja alle gleich ansprechen lassen dürften diese Interfaces für jeden Dateityp gleich sein.
Es bleibt natürlich eine Menge Arbeit aber ob die Serialisierung einfacher zu realisieren ist, weiß ich nicht...
Hier in der DP wurde in letzter Zeit ein Klasse-zu-XML-Serializer vorgestellt, kannst ja mal danach suchen, aber soweit ich weiß ist da auch einiges an Umstellung im Code der Klasse notwendig...

Grüße phreax

Alaitoc 15. Apr 2009 08:49

Re: Plugins Dateitypen und Parser
 
Argh, solch eine Antwort wollte ich nicht hören.
Aufwand = Schlecht, da das alles an einem doch etwas größerem Projekt geändert werden müsste.

Naja egal, vielen Dank euch allen :)

MfG Alaitoc


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:18 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