Announcement

Collapse
No announcement yet.

#0 beendet den String

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #0 beendet den String

    Hallo zusammen!<BR><BR>
    Ich habe eine DLL geschrieben, mit der Daten nach dem DES-Algorithmus verschlüsselt werden. Leider kann es dabei auch vorkommen, dass in den verschlüsselten Daten das Steuerzeichen #0 vorkommt, dass sowohl von IB als auch von Access als Ende des Strings interpretiert wird. Wie kann ich nun die Datenbanken dazu überreden, den gesamten String zu speichern? Nur so können die Daten richtig entschlüsselt werden! <BR><BR>
    Danke Wolfgang
    In God we trust - all others pay cash!

  • #2
    Hallo Wolfgang,

    bei Interbase/Firebird kann man auch die #0 übergeben. Wie es funktioniert hängt von den verwendeten Zugriffskomponenten ab. Bei IBObjects gibt es dafür RawString. Bei IBX oder BDE müßte ich erst mal schauen.

    Gruß

    Torste

    Comment


    • #3
      Hallo Torsten,<BR><BR>Danke für die schnelle Antwort. Leider verwende ich privat nur IBX, da IBO ja kostenpflichtig ist. Ich hab's jetzt auch unter Paradox versucht, leider mit dem gleichen Ergebnis.<BR>Könnte es evtl mit BLOB SUB_TYPE 0 funktionieren? Welche Nachteile würde mir das bringen?<BR><BR>Ciao<BR>Wolfgan
      In God we trust - all others pay cash!

      Comment


      • #4
        Hallo Wolfgang,

        mit IBX geht das bestimmt auch. Ich schau mir das heute Abend an.

        Gruß

        Torste

        Comment


        • #5
          Hallo Wolfgang,

          bei Paradox müßte das mit dem BLOB Typ 2 (Binär) funktionieren.

          Nachteile (bei Paradox): Alle nativen Oberflächenelemente (DBEdit, DBGrid...) können keine BLOB Typ 2 Daten anzeigen... Bei IB könnte ich mir ähnliches vorstellen, aber da ich kein IB verwende, wirst Du wohl auf Torstens Antwort warten müssen.

          Grüße Joche

          Comment


          • #6
            Hallo,

            mit Blob's geht es sowieso. Nur ist die Handhabung etwas aufwendiger, sodass ich schon bei "normalen Strings bleiben würde.

            Gruß

            Torste

            Comment


            • #7
              Hallo,

              für IBX habe ich jetzt so auf die Schnelle auch nix passendes für Strings gefunden. Normalerweise müßte es über die XSQLVAR-Struktur gehen. An die kommt man über "ParamByName('EncodeString').Data" ran. In der Kürze der zeit habe ich jetzt aber keine Lösung gefunden.

              Gruß

              Torste

              Comment


              • #8
                Hallo,<BR><BR>ein Test mit Memofeldern hat funktioniert, der Hinweis mit der XSQLVAR-Struktur (Parametrisierte TIBQuery mit Qry.Params.ParamByName('xy').Value :=) hat leider nichts gebracht. Kann es evtl über Streams funktionieren? Wenn ja, wie müsste ich da vorgehen?<BR><BR>Danke<BR>Wolfgan
                In God we trust - all others pay cash!

                Comment


                • #9
                  Hallo Wolfgang,

                  wie wär's denn mit Qry.Parambyname('xy').LoadFromStream?
                  Als parametertyp muß dann entsprechend der datentyp Blob eingestellt sein.

                  Gruß

                  Torste

                  Comment


                  • #10
                    Hallo Torsten,<BR><BR>Ich hab das jetzt alles durchprobiert, nichts ausser den BLOB-Feldern hat funktioniert. Bei Textdateien hatte ich den gleichen Effekt, da hab ich's umgangen, indem ich einfach jedes Zeichen einzeln in die Datei schreibe. Wie ich das allerdings in nem DB-Feld machen soll ist mir schleierhaft.<BR>Trotzdem Danke für Deine Mühen!<BR><BR>Ciao<BR>Wolfgan
                    In God we trust - all others pay cash!

                    Comment

                    Working...
                    X