Einzelnen Beitrag anzeigen

urs.liska

Registriert seit: 6. Aug 2003
Ort: Freiburg
195 Beiträge
 
Delphi 6 Professional
 
#5

Re: rtf zu plaintext (ohne TRichEdit)

  Alt 24. Jan 2005, 08:00
Zitat von Bernhard Geyer:
Zitat von urs.liska:
aber ich muss weitere Units einbinden und eine relativ komplexe Komponente instantiieren. Und das wahnsinnig oft, für jeden Datensatz mindestens einmal.
Du brauchst ja diese Instanz nicht jedesmal wieder zerstören. Was spricht dagegen eine Instanz der Komponente für die gesamte Laufzeit des Programms am leben zu erhalten?
Ich werde dem mal nachgehen, aber ich fürchte, das könnte Probleme geben.
Die Funktion ist in einer DLL, die vom Firebird-Server als UDF (User Defined Function) aufgerufen wird. Erstens bin ich mir nicht sicher, ob die DLL zwischen den Aufrufen überhaupt geladen ist bzw. Objekte behalten kann (lässt sich wahrscheinlich relativ leicht klären). Und zweitens müsste das ganze Thread-sicher sein, und das ist ja mit globalen Variablen/Objekten nicht so unproblematisch.

Zitat von Bernhard Geyer:
Zitat von urs.liska:
Man muss vielleicht nicht immer ganz pingelig sein mit dem Versuch, alle Routinen so effizient wie möglich zu programmieren; aber eine Routine, die als externe Funktion in einen Datenbankserver integriert werden soll, sollte zumindest nicht die größten Komponenten auffahren, wenn die gar nicht benötigt werden...
TRichEdit stellt nur einen Wrapper für die im System installierte RTF-Komponente dar. Dieser Wrapper ist auch noch relativ schlank gehalten.
Wenn Du ihn nicht willst, heißt es du mußt den RTF-Stream parsen und entsprechende Formatierungskennzeichner von Textelementen trennen. Und ob diese schlanker wird als eine schon seid Win95 vorhandene Systemkomponente?
Wenn Du Dir da relativ sicher bist, dass es eine "schlanke" implementierung ist, werde ich es mal probieren. Vielleicht ist ja alles gar nicht so schlimm...

Danke und fG
Urs
  Mit Zitat antworten Zitat