Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   RTF Text aus Datenbank lesen (https://www.delphipraxis.net/165302-rtf-text-aus-datenbank-lesen.html)

preupet 22. Dez 2011 17:21

Datenbank: MSSQL • Version: 2008 • Zugriff über: ADO

RTF Text aus Datenbank lesen
 
Ich soll von einer Bestehenden Datenbank ein Feld auslesen das ein Image Feld ist.
Es ist ein RTF- Text gespeichert,soweit kein Problem läst sich in DBRichtedit darstellen.
Aber ein Teil nicht.
Der zu Darstellende Text ist in Hex = 0x7B5C727466315C616E73695C616E7369637067305C756331 5C...
somit RTF - TEXT
Der Ander Teil ist aber in Hex = 0x434D50325C020000789C7D91B18E83300C86F74A7D071E21 41AAD48AB..

Kann mir jemand helfen was mit diesen Gemacht wurde ????

:?::?:

p80286 22. Dez 2011 18:39

AW: RTF Text aus Datenbank lesen
 
Ich bin jetzt ehrlich gesagt zu faul, eine Hex-Übersetzung zu machen. Was ist denn an diesem Text seltsam?
Bzw. was lässt sich nicht darstellen?

Gruß
K-H

preupet 22. Dez 2011 19:25

AW: RTF Text aus Datenbank lesen
 
Dieser Text in Hex 0x434D50325C020000789C7D91B18E83300C86F74A7D071E21 41AAD48AB..

kann man nicht darstellen.
Habs schon mit TDecompressionStream versucht .

Es kommt aber Magic Number" im GZip-Header ist nicht richtig.

Bummi 22. Dez 2011 22:17

AW: RTF Text aus Datenbank lesen
 
nur so ein Verdacht

Lead Tools compressed image ?

p80286 22. Dez 2011 22:42

AW: RTF Text aus Datenbank lesen
 
Mit diesem Stück kann ich recht wenig anfangen "CMP2" ist in der RTF-Doku nicht zu finden.
Häng doch einmal dn vollständigen Text an. (ggf löschst Du den Klartext.

Gruß
K-H

preupet 23. Dez 2011 05:57

AW: RTF Text aus Datenbank lesen
 
Hier der Vollständige String

0x434D50325C020000789C7D91B18E83300C86F74A7D071E21 41AAD48AB96375434F3779316043A45C420DBDA115EF5E03A7 53952B1DE2FCFE3FEBF7E03BC8C01630F46E2E55D718B85616 6A623653F5189A3FC164EEC0310C43E95518E0E03C70D5A2F4 34D8EC743E1F3F985D45C5A8DCA6FC8BA4C68033CC53F8896D FC56A6B08A3E8AEE2840A836D008513050FA2B99FF56BEDB3D 9BDABEB39780A97B1191D8C9EC4AC4CAC225C2E6FB6753DB77 F6923C752F22123B995D894817DA43FE0B54CCE09017E376B3 DD4C67D7DAA1D4C0CE80D777F120FAF5A53E34E006EC4C069D 4717B2F9FCBDDD673F515A92EC186E14DAC82A4F280EC7070D 7CD269

Es gibt keinen Klartext >> darum vermute ich,das der rtf Text komprimiert wurde.

Furtbichler 23. Dez 2011 07:04

AW: RTF Text aus Datenbank lesen
 
preupet, meinst Du wirklich, irgend jemand versteht diesen Quark (aka Hexcode)?
Den RTF-Klartext wollen wir sehen.

Wenn es Dir nicht allzuviel Umstände macht: Schnapp Dir eine ASCII-Tabelle (Google hilft) und übersetze jeweils 2 von den Hex-Zeichen in einen Buchstaben.

Oder meinst Du WIR sollen das machen?

preupet 23. Dez 2011 07:16

AW: RTF Text aus Datenbank lesen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier die Übersetzung
Als Text nur >> CMP2\

Als HTML Siehe Anhang

Bummi 23. Dez 2011 07:22

AW: RTF Text aus Datenbank lesen
 
Bist Du sicher dass da immer RTF drin sein soll und nicht bisweilen z.B. eine Dokumentenscan o.ä.
Wenn ja wäre es interessant herauszubekommen welche Komponenten / SDK's bisher im Einsatz waren.

Furtbichler 23. Dez 2011 07:38

AW: RTF Text aus Datenbank lesen
 
Soviel ist schon mal klar: Das ist kein RTF. Wie wurden die Daten in die Datenbank geschrieben?

preupet 23. Dez 2011 07:46

AW: RTF Text aus Datenbank lesen
 
Zur Erklärung
Ich soll von einer bestehende Datenbank wo Texte eingegeben wurden die in alter Version
noch als RTF gespeichert sind in einem Image Feld.
Es muss mal eine Änderung gegeben haben, denn die neueren Texte sind in diesen Zeichen gespeichert.
Das Programm wurde in Delphi geschrieben, ich hab keinen Quellcode und auch keine Möglichkeit zu fragen welche Komponeten gewechselt wurden.
In Google hab ich mit 0x43 gefunden, das es Komprimiert ist.
Ich vermute der Text wurde vorm Speichern in die Datenbank komprimiert.
Mit Lzip hab ich schon versucht. >> Fehler
Welche Komprimierung gibt es noch unter Delphi??

Furtbichler 23. Dez 2011 08:40

AW: RTF Text aus Datenbank lesen
 
0x43 ist erst einmal nur ein Byte, als ASCII-Code der Buchstabe 'C'. Es wäre denkbar, das die Daten komprimiert wurden. Oder Verschlüsselt. Oder Beides.

Wenn Du in allen Texten den gleichen Präfix findest 'CMP' oder 'CMP2', wäre das ein Anhaltspunkt.

Aber im allgemeinen lautet die Antwort auf die Frage: "Kann man das auslesen, wenn man nicht weiss, wie es gespeichert wurde und an den Quelltext nicht rankommt und nicht fragen darf..." NEIN.

Es wundert mich doch sehr stark, und es wäre möglich, das man hier Daten auslesen will, die einem nicht gehören.

Deine Frage/Anliegen ähnelt nämlich
"Ich habe hier einen Tresor, da hat jemand Dokumente reingepackt und die muss ich wieder rausholen. Die Tür geht aber nicht auf, ich vermute, sie ist abgeschlossen oder mit einem Zahlencode versehen."

Merkste wat?

preupet 23. Dez 2011 09:01

AW: RTF Text aus Datenbank lesen
 
Die Daten ich Auslesen soll gehören schon den für den ich es machen soll.
Im alten Programm gibt es keine Exportmöglichkeit.
Und die Firma die das alte Programm programmiert hat gibt es nicht mehr.

p80286 23. Dez 2011 10:37

AW: RTF Text aus Datenbank lesen
 
Wie Du schon richtig erkannt hast, ist ein teil Deiner Daten im RTF-Format abgelegt.
Dieser seltsame cmp-Teil ist aber nicht offizell RTF. Das kann zunächst einmal alles mögliche sein.
vor diesem Teil müssten aber noch andere "Lesbare" RTF-Teile verfügbar sein. GGf ist CMP2 auch ein vorher definierter Alias.
Es gibt hier zu viele vielleicht und Wenn und aber um eine konkrete Aussage zu treffen.
Was passiert denn wenn Du den Text in eine RTF-Datei exportierst und dann mit word öffnest?

Gruß
K-H

Sir Rufo 23. Dez 2011 11:06

AW: RTF Text aus Datenbank lesen
 
Gibt es das alte Programm noch?

Dann schau doch mal, was bei dem Datensatz angezeigt wird. Ist das tatsächlich ein RTF oder irgendwas anderes.

preupet 23. Dez 2011 11:48

AW: RTF Text aus Datenbank lesen
 
Das alte läuft noch .
Es wird in der Maske text angezeigt, bei der Anzeige sieht man keinen Unterschied von den Text den in rtf Format gespeichert ist und der andere Text den ich nicht auslesen kann. wo nur CMP2\ angezeigt wird
Sql Befehl: select convert(varchar(8000),convert(binary(8000), Bemerkungen)) from Adressen

mfg Peter

Bummi 23. Dez 2011 12:05

AW: RTF Text aus Datenbank lesen
 
vielleicht so was ?

http://webcentre.co.nz/creview.htm
http://webcentre.co.nz/compress.htm


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:54 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz