Einzelnen Beitrag anzeigen

Root2k

Registriert seit: 7. Jun 2011
Ort: Ulm
49 Beiträge
 
Delphi XE Enterprise
 
#10

AW: Speichern von RCx-Zeichen in Textdatei

  Alt 17. Jun 2011, 13:13
Ich bekomm das irgendwie nicht richtig zum laufen, denn ich bekomme folgende Resultate bei entsprechender Eingabe (ist egal ob ich Buchstaben oder Zahlen eingebe):

Eingabe: 1
Ausgabe: 1

Eingabe: 11
Ausgabe: 11se
Zusätzlich komisch: Wenn ich z.B. in den Browser klicke und dann nochmal die Daten auslesen lasse (Button klicke), erhalte ich die Ausgabe: 11껀Ȝ

Eingabe: 111
Ausgabe: 111en
Zusätzlich komisch: Wenn ich z.B. in den Browser klicke und dann nochmal die Daten auslesen lasse (Button klicke), erhalte ich die Ausgabe: 111Ȝ�Ȟ

Eingabe: 1111
Ausgabe: 1111cher
Zusätzlich komisch: Wenn ich z.B. in den Browser klicke und dann nochmal die Daten auslesen lasse (Button klicke), erhalte ich die Ausgabe: 1111�Ȟ

usw.

Bei der Eingabe von 8 Zeichen sieht das dann plötzlich so aus:

http://img4.fotos-hochladen.net/uploads/16oix2uetnq.jpg

Ich weiß nicht was das Programm mir da liefert.
So ist das Folgende auch recht merkwürdig:

http://img4.fotos-hochladen.net/uploads/2hazy8pc546.jpg

So sieht mein Code momentan aus...

Speichern der Eingabe (EditFeld: OutputCrypt):
Code:
procedure TForm1.BtnSaveClick(Sender: TObject);
var
  FStream: TStream;
  const OutFileName: string = 'd:\tmp.txt';
begin
  ForceDirectories(ExtractFilePath(OutFileName)) ;
  FStream := TFileStream.Create(OutFileName,fmCreate) ;
  FStream.Write(Pointer(OutputCrypt.Text)^,Length(OutputCrypt.Text)* SizeOf(Char)) ;
  FreeAndNil(FStream) ;
end;
Auslesen der Daten + Einfügen in Ausgabefeld (EditFeld: OutputDecrypt):
Code:
procedure TForm1.BtnReadClick(Sender: TObject);

var
  InputFile: TFileStream;
  TmpText: String;

const
  outFileName: string = 'd:\tmp.txt';

begin
  InputFile := TFileStream.Create(outFileName, fmOpenRead);
  try
    SetLength(TmpText, InputFile.Size);
    InputFile.Read(TmpText[1], InputFile.Size);
  finally
    InputFile.Free;
  end;
  OutputDecrypt.Text := TmpText;
end;
Kann mir da vielleicht einer helfen und sagen was ich falsch mache?

Die Daten scheinen übrigens korrekt in der TXT-Datei zu stehen. Da steht also kein "w64\kernel32.dll" und sowas drin.

PS: Wie schon gesagt... ich bin noch ein NewBe was Delphi angeht.
  Mit Zitat antworten Zitat