AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

HILFE: DEC 3.0 -> DEC 5.1/5.2

Offene Frage von "JasonClark"
Ein Thema von JasonClark · begonnen am 3. Sep 2009 · letzter Beitrag vom 7. Sep 2009
Antwort Antwort
JasonClark

Registriert seit: 16. Jan 2006
Ort: Luzern
7 Beiträge
 
Delphi XE2 Professional
 
#1

HILFE: DEC 3.0 -> DEC 5.1/5.2

  Alt 3. Sep 2009, 15:04
Hallo Zusammen

Ich benutze schon sei einiger Zeit zum Speichern von Dateistreams die DEC 3.0 und habe mich damals für den TCipher_SCOP entschieden.

Damals bei der DEC 3.0 gab es ja folgenden einfachen Aufruf:

Delphi-Quellcode:
{ .. }
with TCipher_SCOP.Create('Secret password', nil) do
begin
  try
    FFileStream.Position := 0;
    EncodeStream(FFileStream, FFileStream, FFileStream.Size);
  finally
    Free;
  end;
end;
{ .. }
Wie man sieht gab es bei der DEC 3.0 beim constructor Create zwei Parametermöglichkeiten. Wobei der erste Parameter ein optionales Passwort war. In der DEC 5.1/5.2 gibt es nur noch das constructor Create ohne Parameter. Somit hab ich versucht die Sache mit der Hasherstellung wie in der DEC 3.0 nachzustellen, indem ich bei der DEC 5.1/5.2 eine eigene Klasse abgleitet habe:

Delphi-Quellcode:
{ TMyCipher_SCOP }
constructor TMyCipher_SCOP.Create(const APassword: AnsiString);
var
  FHash: TDECHash;
  I : Integer;
begin
  inherited Create;
  if (Length(APassword) > 0) then
  begin
    FHash := THash_RipeMD256.Create;
    try
      FHash.Init;
      FHash.Calc(PAnsiChar(APassword)^, Length(APassword));
      FHash.Done;
      I := FHash.DigestSize;
      if (I > Context.KeySize)
      then
         I := Context.KeySize;
      { Ab hier scheint etwas schief zugehen }
      Init(FHash.Digest^, I, InitVector, InitVectorSize, 0);
      Encode(FHash.Digest^, FHash.Digest^, FHash.DigestSize);
      Done;
    finally
      FHash.Free;
    end;
  end;
end;

Das grösse Problem ist nun das ich eine Datei mit Hilfe von DEC 3.0 unter Delphi 2007 mit einem Stream gespeichert hab und nun auf Delphi 2009 umgestiegen bin und mit meinem Programm die Datei wieder laden muss.

Mir sind unteranderem einige Änderungen bei der DEC 5.1/5.2 im CTSx und auch im GetContext aufgefallen.

Hoffe mir kann jemand behilflich sein, da es wirklich dringend wäre. Evtl. hat ja Hagen hier einen schnellen Hinweis?

Gruss
Jason
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#2

Re: HILFE: DEC 5.1 (Delphi 2007) -> DEC 5.2 (Delphi 2009)

  Alt 3. Sep 2009, 15:12
Hi JasonClark,

Zitat von JasonClark:
Wie man sieht gab es bei der DEC 5.1 beim constructor Create zwei Parametermöglichkeiten. Wobei der erste Parameter ein optionales Passwort war. In der DEC 5.2 gibt es nur noch das constructor Create ohne Parameter. Somit hab ich versucht die Sache mit der Hasherstellung wie in der DEC 5.1 nachzustellen, indem ich bei der DEC 5.2 eine eigene Klasse abgleitet habe:

...

Mir sind unteranderem einige Änderungen bei der DEC 5.2 im CTSx und auch im GetContext aufgefallen.


Ich verstehe Deinen Post nicht, da die DEC 5.2:
1) nur ein Portierung der 5.1 für Unicode unter D2009 war
und
2) von mir gemacht wurde

Ich habe nichts, aber auch gar nichts an den Konstruktoren gedreht, noch irgendwelche Änderungen am CTSx oder GetContext vorgenommen (jedenfalls nichts außerhalb der Char/String Relevanz).

Bist Du sicher, daß Du vorher die letzte verfügbare DEC 5.1 verwendest hast? Das klingt für mich nicht danach...

Nachtrag: Erstmal natürlich herzlichen Willkommen in der DP



Gruß Assertor
Frederik
  Mit Zitat antworten Zitat
JasonClark

Registriert seit: 16. Jan 2006
Ort: Luzern
7 Beiträge
 
Delphi XE2 Professional
 
#3

Re: HILFE: DEC 5.1 (Delphi 2007) -> DEC 5.2 (Delphi 2009)

  Alt 4. Sep 2009, 08:02
Zitat von Assertor:
Bist Du sicher, daß Du vorher die letzte verfügbare DEC 5.1 verwendest hast? Das klingt für mich nicht danach...
Gruß Assertor
Hallo Assertor

Erstmal vielen Dank für deine Willkommensgrüsse und deine Arbeit an der Portierung von DEC 5.1 auf DEC 5.2

Voller Erschrecken musste ich feststellen das du vollkommen recht hast und ich die DEC 3.0 (siehe auch Link unter: www.torry.net)
verwendet hatte. Das schlimme daran ist in einem Unterverzeichnis der alten DEC 3.0 Bibliothek lag eigentlich die DEC 5.1 und daher bin ich mal davon ausgegangen das ich das neuste verwendet hätte. Leider war dem nicht so und somit bitte ich Dich um Entschuldigung für dieses Missverständniss meinerseits.

Trotzdem wäre ich Dir ewig dankbar, falls Du dich ggf. trotzdem meinem Problem wie oben geschildert von DEC 3.0 -> DEC 5.1/DEC 5.2 annehmen könntest. Soweit ich weiss hatte ja Hagen bei der DEC 3.0 ein komplettes Recoding vorgenommen und somit wäre es nett von Dir oder jemand anderes mir mit diesen Constructor Unterschieden behilflich zu sein. Da wie ich ja, wie oben bereits geschildert habe, einen alten Dateistream mit DEC 3.0 (TCipher_SCOP) geschrieben und jetzt gerne mit DEC 5.1 oder DEC 5.2 (wegen Unicode) wieder auslesen möchte.

Nochmals Danke für die Richtigstellung Assertor

Hoffentlich weiss jemand Rat... bin schon ziemlich am verzweifeln an den Unterschieden bei CTSx und GetContext zwischen DEC 3.0 und DEC 5.1/DEC 5.2

Gruss
Jason
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.252 Beiträge
 
Delphi 2006 Professional
 
#4

Re: HILFE: DEC 5.1 (Delphi 2007) -> DEC 5.2 (Delphi 2009)

  Alt 4. Sep 2009, 09:48
Zitat von JasonClark:
... Hoffentlich weiss jemand Rat...
Hai Jason,

im Zweifel kann sicher der Entwickler des DEC helfen.
Das schöne ist..... er ist Mitglied in der Delphi-PRAXiS. -> Hagen
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
JasonClark

Registriert seit: 16. Jan 2006
Ort: Luzern
7 Beiträge
 
Delphi XE2 Professional
 
#5

Re: HILFE: DEC 5.1 (Delphi 2007) -> DEC 5.2 (Delphi 2009)

  Alt 4. Sep 2009, 12:51
Zitat von Sharky:
im Zweifel kann sicher der Entwickler des DEC helfen.
Das schöne ist..... er ist Mitglied in der Delphi-PRAXiS. -> Hagen
Hallo Sharky

Vielen Dank für den Tipp. Ich wusste auch das er hier im Forum angemeldet ist, dachte aber vorher das es ja eine Thematik der Portierung auf DEC 5.2 gewesen sei und wollte ihn somit damit nicht nerven.

Ich hab ihn versucht zu kontakieren und falls vielleicht trotzdem jemand anderes mir schonmal helfen könnte wäre ich sehr dankbar da es für mich jetzt ziemlich dringend wäre.

Danke nochmals an alle die mir bis jetzt geholfen haben und hoffentlich noch helfen werden/können!

Grüsse aus der verregneten Schweiz...
Jason
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#6

Re: HILFE: DEC 5.1 (Delphi 2007) -> DEC 5.2 (Delphi 2009)

  Alt 7. Sep 2009, 23:55
Hi Jason,

Zitat von JasonClark:
Erstmal vielen Dank für deine Willkommensgrüsse und deine Arbeit an der Portierung von DEC 5.1 auf DEC 5.2
Bitte, gerne!

Zitat von JasonClark:
Voller Erschrecken musste ich feststellen das du vollkommen recht hast und ich die DEC 3.0 [...] verwendet hatte.
Ist ja kein Problem, hatte mich nur gewundert - wenn ich da was geändert hätte, müßte ich mich ich noch grob dran erinnern

Zitat von JasonClark:
Trotzdem wäre ich Dir ewig dankbar, falls Du dich ggf. trotzdem meinem Problem wie oben geschildert von DEC 3.0 -> DEC 5.1/DEC 5.2 annehmen könntest.
Puh, leider komm ich im moment nicht dazu - zu meiner Schande muß ich gestehen, daß die DEC 3 weit vor meiner (Delphi-)Zeit lag. Ich habe diese also nie genutzt, geschweige mich mit deren Code auseinander gesetzt. Sprich: Ich müßte mich jetzt erst in eine Komponente einlesen, die ich nie mehr verwenden würde. Das sprengt leider meine verfügbare Zeit.

Suche doch nochmal hier im Forum, wenn ich mich recht erinnere gibt es bereits einige Threads zum Thema Portierung DEC 3 > DEC 5.x. Sharkys Tipp hast Du ja schon gelesen.

Tut mir leid, daß ich Dir nicht weiterhelfen kann.

Gruß Assertor
Frederik
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:57 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