Delphi-PRAXiS

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 Stream und LoadFromFile? (https://www.delphipraxis.net/60097-stream-und-loadfromfile.html)

Stephan 3. Jan 2006 09:16


Stream und LoadFromFile?
 
Hallo,

Ich habe einen Stream. Den Inhalt des Streams möchte ich in eine Komponente laden. Leider besitzt die Komponente nur eine Methode "LoadFromFile" und nicht "LoadFromStream". Ich könnte natürlich den Stream zuerst in eine temporäre Datei speichern und dann in die Komponente laden ... allerdings gefällt mir diese Lösung nicht sonderlich gut. Gibt es hier irgendeine andere Möglichkeit dies zu realisieren?

DP-Maintenance 3. Jan 2006 09:20

DP-Maintenance
 
Dieses Thema wurde von "Luckie" von "Sonstige Fragen zu Delphi" nach "VCL / WinForms / Controls" verschoben.
Komponentenfrage -> VCL

jim_raynor 3. Jan 2006 09:21

Re: Stream und LoadFromFile?
 
Hast du den Sourcecode der Komponente? Wenn ja könnte man ja mal in LoadFromFile reinschauen und wenn dort schon Streams verwendet werden, sollte es einfach sein, eine neue Funktion LoadFromStream zu machen. Ohne Sourcecodes sieht es aber ehr schlecht aus.

Luckie 3. Jan 2006 09:21

Re: Stream und LoadFromFile?
 
Und wenn du uns jetzt noch verräts, um was für eine Komponente es sich handelt und was sie noch für Eigenschaften hat, kann man dir eventuell sogar helfen. ;)

Stephan 3. Jan 2006 09:31

Re: Stream und LoadFromFile?
 
Hallo,

Erstmal danke für eure Antworten. Die Komponente ist der MacroRecorder unter http://www.tmssoftware.com/mr.htm . Da die Komponente nicht kostenlos ist habe ich den Namen zuerst mal weggelassen.

Also den Sourcecode der Komponente hab ich. Letztendlich wird hier eine TStringList verwendet und über TStringList.LoadFromFile(...) die Datei geladen. Allerdings würde ich die Komponente nur ungern umschreiben, bei Updates müsste ich meine Änderungen immer wieder einbauen. Aber wenn sich das anders nicht lösen lässt bleibt mir wohl nichts anderes übrig :) . Wobei das so wie die Komponente programmiert ist schon ein Haufen Arbeit bedeutet.

Nachtrag:
Die Komponente selber besitzt die Eigenschaft "FileName". Beim Aufruf bestimmter Funktionen wie PlayMacro oder RecordMacro wird dann die angegebene Datei unter FileName geladen oder unter dem Namen gespeichert.

sh17 3. Jan 2006 09:43

Re: Stream und LoadFromFile?
 
Vielleicht kannst Du ja eine eigene Komponente von dieser ableiten und die Methode LoadFromStream hinzufügen? So ist nach einem Update alles noch da.

ManuMF 3. Jan 2006 09:47

Re: Stream und LoadFromFile?
 
Andere Möglichkeit: Den Stream temporär zwischenspeichern (SaveToFile).

Gruß,
ManuMF

sh17 3. Jan 2006 10:23

Re: Stream und LoadFromFile?
 
Zitat:

Zitat von ManuMF
Andere Möglichkeit: Den Stream temporär zwischenspeichern (SaveToFile).

Das will er ja gerade nicht !!!

ManuMF 3. Jan 2006 16:47

Re: Stream und LoadFromFile?
 
Stimmt, sorry, habe ich übersehen.

Gruß,
ManuMF

marabu 3. Jan 2006 17:55

Re: Stream und LoadFromFile?
 
Hallo Stephan,

Zitat:

Zitat von Stephan
Wobei das so wie die Komponente programmiert ist schon ein Haufen Arbeit bedeutet.

das will ich gar nicht glauben. Du brauchst doch nur die beiden virtuellen Methoden LoadFromFile() und SaveToFile() überschreiben, so dass diese bei Übergabe eines leeren string als FileName einen MemoryStream verwenden, den du als neue property definierst - damit du von außen darauf zugreifen kannst.

Neujahrsgrüße vom marabu


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