AGB  ·  Datenschutz  ·  Impressum  







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

Alten Code von Delphi 5 benutzen

Ein Thema von Dumpfbacke · begonnen am 11. Mär 2018 · letzter Beitrag vom 13. Mär 2018
Antwort Antwort
Seite 2 von 2     12   
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#11

AW: Alten Code von Delphi 5 benutzen

  Alt 12. Mär 2018, 07:08
Hallo,
ich denke ja, der Code soll funktionieren mit den geringsten Anpassungen,
und das wäre die Lösung von HolgerX

String -> AnsiString.
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#12

AW: Alten Code von Delphi 5 benutzen

  Alt 12. Mär 2018, 08:26
Also ich habe da so meine Bedenken, das die ursprüngliche Version immer richtig funktioniert hat, da beim Verschlüsseln auch Werte unter x20 generiert werden könnten. Und je nach weiterer Verarbeitung könnte das unschöne Folgen zeitigen.
Solange du kein WinAPI-Funktionen verwendest stellst selbst $00 kein Problem dar.
Früher zu D1-Zeiten hatte ich mal auch String als Buffer für Datenübertragung im Einsatz. Und dort sind auch $00 vorgekommen.
Einzig wegen der 255-Zeicheneinschränkung habe ich irgendwann auf Byte-Stream gewechselt.

Aber *schön* ist was anderes.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#13

AW: Alten Code von Delphi 5 benutzen

  Alt 12. Mär 2018, 09:11
Also ich habe da so meine Bedenken, das die ursprüngliche Version immer richtig funktioniert hat, da beim Verschlüsseln auch Werte unter x20 generiert werden könnten. Und je nach weiterer Verarbeitung könnte das unschöne Folgen zeitigen.
Solange du kein WinAPI-Funktionen verwendest stellst selbst $00 kein Problem dar.
Früher zu D1-Zeiten hatte ich mal auch String als Buffer für Datenübertragung im Einsatz. Und dort sind auch $00 vorgekommen.
Einzig wegen der 255-Zeicheneinschränkung habe ich irgendwann auf Byte-Stream gewechselt.

Aber *schön* ist was anderes.
Da man (Du schon) selten weiß, wann das API zum Zuge kommt, sollte man auch die Finger davon lassen.
Hier liest man immer wieder, daß irgendjemand über String stolpert, und sich in irgendwelchen Kodierungen verheddert. Ebenso scheint die Adressierung von statischen und dynamischen Arrays in den Bereich des Voodoo zu gehören. Wenn dann noch Pointer ins Spiel kommen, wird es für viele Zauberlehrlinge richtig eng.
(hatte ich schon Records und Wortgrenzen erwähnt?)

Darum finde ich den Hinweis auf mögliche Untiefen auch heute noch sehr wichtig. Vor allem weil es genügend alten Kode gibt, an dem der eine oder andere verzweifelt.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
OlafSt

Registriert seit: 2. Mär 2007
Ort: Hamburg
284 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#14

AW: Alten Code von Delphi 5 benutzen

  Alt 12. Mär 2018, 09:24
Würde ein
Ord(InString[I]) xor (StartKey shr 8); nicht auch ganz ausgezeichnet funktionieren ?
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#15

AW: Alten Code von Delphi 5 benutzen

  Alt 12. Mär 2018, 09:28
Ich rate auch dazu, wenn es denn ein string objekt bleiben soll, wenigstens eine Base64 en-/decodierung hinzuzufügen damit es keine string inkompatibilät geben kann oder auf ein array (für encodierten string) umzusteigen.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#16

AW: Alten Code von Delphi 5 benutzen

  Alt 12. Mär 2018, 09:48
String wird/wurde eigentlich nur für sowas genommen, weil er so einfach zu verwalten ist.
Aber in aktuellen Delphis funktionieren auch Copy/Insert/Delete/usw. auch bei Byte-Arrays, einzig das CopyOnWrite wird man wohl nie reparieren, womit das weiterhin nur bei Strings funktioniert.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#17

AW: Alten Code von Delphi 5 benutzen

  Alt 12. Mär 2018, 11:16
einzig das CopyOnWrite wird man wohl nie reparieren
Damit implizierst du, daß es kaputt ist. Es ist aber as designed (und das ist IMHO auch gut so - und nebenbei auch noch OT).
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Dumpfbacke

Registriert seit: 10. Mär 2005
Ort: Mitten in Deutschland
332 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#18

AW: Alten Code von Delphi 5 benutzen

  Alt 13. Mär 2018, 10:13
Hallo Jungs,
danke für Eure Hilfe. Mit AnsiString hat es funktioniert.
Tanja
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 22:20 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