AGB  ·  Datenschutz  ·  Impressum  







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

Externes Programm Teil 2

Ein Thema von Willie1 · begonnen am 19. Jan 2018 · letzter Beitrag vom 5. Feb 2018
Antwort Antwort
Seite 1 von 2  1 2      
Willie1

Registriert seit: 28. Mai 2008
740 Beiträge
 
Delphi 10.1 Berlin Starter
 
#1

AW: Externes Programm Teil 2

  Alt 28. Jan 2018, 15:54
Zitat:
mein tipp wäre das die memo box etwas mit deinem text anstellt (Umcodiert/Umformatiert)
Genau das vermute ich auch. Passt ja, dass es mit Delphi 2005 ohne Fehler lief.
var Txt: string, Txt = '1234567890' gespeichert wird 31003200330034003500 (Hexeitor)! (unverschlüsselt)
var Txt: ansistring Txt = '1234567890' dann geht's. Aber sobald ein Zeilenumbruch erfolgt, geht's wieder schief.


txt:=Base64Enc(Txt); zu welcher Bibliothek gehört das.

Ich habe gelesen bei 32-Bit-Compiler ist string Unicode.

Geändert von Willie1 (28. Jan 2018 um 16:56 Uhr)
  Mit Zitat antworten Zitat
Fukiszo
(Gast)

n/a Beiträge
 
#2

AW: Externes Programm Teil 2

  Alt 29. Jan 2018, 15:05
var Txt: string, Txt = '1234567890' gespeichert wird 31003200330034003500 (Hexeitor)! (unverschlüsselt)
also 31003200330034003500 ist 1234etc als hexadezimalstring mit nullen (terminator) dazwischen soweit ich weiß, aber was weiß ich schon im vergleich zu den profi's hier.


txt:=Base64Enc(Txt); zu welcher Bibliothek gehört das.
Das gehört zu der Base64.7z von meinem obrigen anhang.
Du kannst auch jede andere Base64 unit benutzen, vielleicht ist so etwas in deinem Delphi sogar von Hause aus dabei ?!?!
Ich hab die nur rangehangen damit du überhaupt etwas hast.


Ich habe gelesen bei 32-Bit-Compiler ist string Unicode.
Das ist Delphi Versions abhängig, bei mir ist string eben kein unicode (altes Delphi 7)

Aber wenn du mein Beispiel mit der Base64 nimmst, sollte alles klappen, unicode hin oder her.

Grüße


ps: ansonsten erstell ein rar/zip/7z archiv mit komplett source + dll und ich überarbeite es so das es funktioniert. momentan les ich nur was du da probierst aber kann's selbst nicht testen.
Falls du das so machst, bearbeite im vorfeld deine passwörter.... ersetz die mit irgendwas, mir ist's egal.

Geändert von Fukiszo (29. Jan 2018 um 15:13 Uhr)
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
740 Beiträge
 
Delphi 10.1 Berlin Starter
 
#3

AW: Externes Programm Teil 2

  Alt 29. Jan 2018, 16:31
Hallo,
ich bin nur Hobby-Programmierer, da fehlen mir manchmal die Grundlagen. Ich erkenne, das der String offensichtlich 2 Bytes pro Zeichen groß ist AnsiString nur 1 Byte. Diese Erkenntnis bringt mich nicht weiter. Ich muss mein Programm von Anfang an über arbeiten, flicken geht nicht. Ich werde deine Ratschläge mit ein beziehen.

Ich gehe mir schon selbst auf due Nerven aber ich habe das Programm gestern Abend auf meinem neuen Laptop mit Windows 10 vor dem großen Update laufen lassen, alles in Ordnung. Das gibt Frust!!!

Frage an Fukiszo: Läuft Delphi 7 unter Windows 10? Ich hatte meinem Neffen Delhi 7 PE (Buch mit CD) geschenkt, er sagt, es läuft mit W10 nicht.


Eine gute Woche für euch alle
Willie
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Externes Programm Teil 2

  Alt 2. Feb 2018, 11:50
Frage an Fukiszo: Läuft Delphi 7 unter Windows 10? Ich hatte meinem Neffen Delhi 7 PE (Buch mit CD) geschenkt, er sagt, es läuft mit W10 nicht.
http://www.delphipraxis.net/184041-d...0-preview.html
https://www.entwickler-ecke.de/topic...n_89408,0.html
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#5

AW: Externes Programm Teil 2

  Alt 29. Jan 2018, 16:38
Hallo Willie,

wenn Du mit Strings statt AnsiStrings arbeitest, musst Du Deine Speicher- und Leseroutine ändern:
Delphi-Quellcode:
var
  aText:String;
  aLen :Integer;
begin
  if SDialog.Execute then begin
  // aText:=Verschluesseln1(Memo1.Lines.Text,true,true); //Zeile A
    aText:=Memo1.Lines.Text; //Zeile B
    aLen:=Length(aText);
    FS:=TFilestream.Create(SDialog.FileName,fmCreate);
    FS.Write(aLen, SizeOf(Integer));
    FS.Write(Pointer(aText)^, aLen*SizeOf(Char));
    FS.Free;
  end;
end;
Und nun, die umgekehrte Richtung:
Delphi-Quellcode:
var
  aText:String;
  aLen :Integer;
begin
  FS:=TFilestream.Create(SDialog.FileName, fmOpenRead);
  aLen:=FS.Read(aLen, SizeOf(Integer));
  SetLength(aText, aLen);
  FS.Read(Pointer(aText)^, aLen*SizeOf(Char));
  FS.Close();
end;
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
740 Beiträge
 
Delphi 10.1 Berlin Starter
 
#6

AW: Externes Programm Teil 2

  Alt 29. Jan 2018, 17:17
Hallo Gollum,
ich glaube, das ist fast die Lösung.
Mein Testbeispiel: '1234567890'
Schreiben geht in Ordnung. erst 4 Bytes für die Länge xA,0,0,0, dann 2 Bytes pro Zeichen.
Lesen noch nicht, aLen=4 Es steht '1234' da.

Willie.
  Mit Zitat antworten Zitat
Fukiszo
(Gast)

n/a Beiträge
 
#7

AW: Externes Programm Teil 2

  Alt 29. Jan 2018, 17:20
Delphi 7 Professional (32bit) schnurrt unter Windows 10 64bit, Delphi 7 Personal Edition kenn ich leider nicht.
Gollum's tipp ist sehr gut, damit sollt es auch ohne Base64 umweg klappen.

Grüße
  Mit Zitat antworten Zitat
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#8

AW: Externes Programm Teil 2

  Alt 30. Jan 2018, 14:30
Hallo Willie,

eigentlich sollte mein Beispiel funktionieren.

Ich habe dir die Routinen als Unit angehängt.
Angehängte Dateien
Dateityp: pas Unit1.pas (920 Bytes, 8x aufgerufen)

Geändert von Gollum (30. Jan 2018 um 14:58 Uhr)
  Mit Zitat antworten Zitat
Willie1

Registriert seit: 28. Mai 2008
740 Beiträge
 
Delphi 10.1 Berlin Starter
 
#9

AW: Externes Programm Teil 2

  Alt 1. Feb 2018, 15:32
Hallo Gollum,

ich verstehe, wie es geht aber selbst wäre ich nicht darauf gekommen!
Willie.
  Mit Zitat antworten Zitat
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#10

AW: Externes Programm Teil 2

  Alt 1. Feb 2018, 16:18
Hallo Willie,

ich habe es auch nicht selber erfunden.
Das Beispiel ist sogar aus der Delphi-Hilfe bzgl. Unicode-Umstellung.

Wichtig ist, dass Dir geholfen wurde.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 23:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz