AGB  ·  Datenschutz  ·  Impressum  







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

Kodierung ändern

Ein Thema von MasterTobi · begonnen am 12. Nov 2009 · letzter Beitrag vom 12. Nov 2009
Antwort Antwort
MasterTobi

Registriert seit: 29. Apr 2007
212 Beiträge
 
#1

Kodierung ändern

  Alt 12. Nov 2009, 18:43
Hallo,

hab jetzt überall gesucht -.-

un zwar ich lade von einem ftp datein runter, früher waren die in ansi gespeichert

un konnte mit hilfe diesen code
Delphi-Quellcode:
  for x := 1 to length(pw) do
  begin
    pw[x] := Chr( BYTE(Ord(pw[x]) + (3 xor (X-1)) * ((X-1) mod 15)) );
    if Ord(pw[x]) >= 255 then
    begin
      pw[x] := Chr( Ord(pw[x]) - 256 );
    end;
  end;

   if 'Key='+pw = pass then
das passwort überprüfen

da sich jetzt die zeichenkodierung der datein in uft8 geändert hat funktioniert das nicht mehr

deshalb frag ich ob es eine möglichkeit gibt die heruntergeladene datei umspeichern kann, vorraussetzung ist das man es nicht sehen soll. geht das irgendwie

oder kann man den code ändern in utf8 ?
MFG
Tobi
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Kodierung ändern

  Alt 12. Nov 2009, 18:57
Man mag es kaum glauben, aber es gibt gleich in der System-Unit so Funktionen ala Utf8ToAnsi
(also diese Funktionen sind immer verfügbar, da automatisch eingebunden).
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
MasterTobi

Registriert seit: 29. Apr 2007
212 Beiträge
 
#3

Re: Kodierung ändern

  Alt 12. Nov 2009, 19:00
richtig die habe ich auch ma da eingebaut trozdem stimmt es nicht überein
MFG
Tobi
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Kodierung ändern

  Alt 12. Nov 2009, 19:03
Hmmm, dann wird wohl noch was anderes geändert sein, außer der Kodierung?

Oder nutzt du zufällig auch noch Delphi 2009+ ?

PS: wenn es dich wirklich um ANSI handelt, dann ist sowas wie if Ord(pw[x]) >= 255 then eigentlich sinnlos, da ein AnsiChar eh nur Werte mit maximal #255 aufnehmen kann.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
MasterTobi

Registriert seit: 29. Apr 2007
212 Beiträge
 
#5

Re: Kodierung ändern

  Alt 12. Nov 2009, 19:06
nein leider nutze ich nur delphi 2005

alsowird es keine möglichkeit geben ?
MFG
Tobi
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Kodierung ändern

  Alt 12. Nov 2009, 19:15
- hat sich was an der Passwortberechnung verändert?
- haben sich ebentuell "falsche" Zeichen in die Dateien geschmuggelt
- ...

Delphi-Quellcode:
var pw: AnsiString;

pw := Utf8ToAnsi(pw);
for x := 0 to Length(pw) - 1 do
  pw[x+1] := AnsiChar(Byte(pw[x+1]) + (x xor $03) * (x mod 15));

if 'Key=' + pw = pass then
hab den Code mal etwas gekürzt
und ich glaub mit dem etwas verschobenen x fällt es besser auf, was genau berechnet wird.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
MasterTobi

Registriert seit: 29. Apr 2007
212 Beiträge
 
#7

Re: Kodierung ändern

  Alt 12. Nov 2009, 19:37
die berechnung ist gleich geblieben
falsche zeichen auch nicht auser die utf8 codierung macht aus den ansi was anderes un wenn man dann wieder von utf8 in ansi geht werden die nochmal geändert

danke für die verkleinerung die funktioniert auch

nur das löst mein problem als nicht
MFG
Tobi
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: Kodierung ändern

  Alt 12. Nov 2009, 19:51
Also, wenn es wirklich nur UTF-8-kodiert ist, dann sollte es nach der Dekodierung der selbe alte ANSI-Text rauskommen.


pass ist auch ein String/AnsiString oder ist das ebenfalls UTF-8?
Delphi-Quellcode:
if AnsiToUtf8('Key=' + pw) = pass then
// oder
if 'Key=' + pw = Utf8ToAnsi(pass) then
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
MasterTobi

Registriert seit: 29. Apr 2007
212 Beiträge
 
#9

Re: Kodierung ändern

  Alt 12. Nov 2009, 19:58
alles war ansi.

ok ich danke dir erstmal für deine hilfe, werden es aber nun etwas umbauen

trozdem THX
MFG
Tobi
  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 12:23 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