Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Updater Prob (https://www.delphipraxis.net/23775-updater-prob.html)

HW764 9. Jun 2004 13:56


Updater Prob
 
Hi an alle!

Problem: Ich hab ein Updater für RPG Maker erstelle spiele geschrieben.
Es liest aus wo die datei ist ( das steht in File1.txt) bzw. im internet liegt und schreibt diese in eine unsichtbare memo.
Dasgleiche auch mit File1Ziel.txt. Nun irgendwie macht er das nicht, das Prob is er liesst es nicht
aus den memos. Er liest statt den text in memo edit1.text ein und nicht die Daten aus den txt files!
Was muss ich ändern damit es stimmt?

Delphi-Quellcode:
procedure TForm1.XiButton1Click(Sender: TObject);
var Datei, Ziel:PChar;
begin
  Memo1.lines.Add ('Update.. bitte einen moment warten...') ;
  Memo2.Lines.LoadFromFile('C:\Updater\File1.txt');
  Memo3.Lines.LoadFromFile('C:\Updater\File1Ziel.txt');
  Datei := ('memo2.lines');                             // Hier stimmt was nicht!
  Ziel := ('memo3.lines');                              // Hier stimmt was nicht!
  UrlDownloadToFile(nil, Datei, Ziel, 0, nil);
      // --------------------------------------------------

      ProgressBar1.Position:=ProgressBar1.Position+100;
      memo1.lines.Add ('==================================');
      memo1.lines.Add ('Download beendet!');
      memo1.lines.Add ('Vielen dank für die benutzung des Updaters!');
      memo1.lines.Add ('Update Komplett!');
 end;

Neuni 9. Jun 2004 14:00

Re: Updater Prob
 
Wie wärs mit memo1.text ???

Neuni 9. Jun 2004 14:02

Re: Updater Prob
 
SO:

Code:
procedure TForm1.XiButton1Click(Sender: TObject);
var Datei, Ziel:PChar;
begin
  Memo1.lines.Add ('Update.. bitte einen moment warten...') ;
  Memo2.Lines.LoadFromFile('C:\Updater\File1.txt');
  Memo3.Lines.LoadFromFile('C:\Updater\File1Ziel.txt');
  Datei := memo2.text;                             // Hier stimmt was
  Ziel := memo3.text;                              // Hier stimmt was
  UrlDownloadToFile(nil, Datei, Ziel, 0, nil);
      // --------------------------------------------------

      ProgressBar1.Position:=ProgressBar1.Position+100;
      memo1.lines.Add ('==================================');
      memo1.lines.Add ('Download beendet!');
      memo1.lines.Add ('Vielen dank für die benutzung des Updaters!');
      memo1.lines.Add ('Update Komplett!');
end;
Oder enfach die '' weglassen, weil sonst schreibt er memo1.lines in das memo :)

Pr0g 9. Jun 2004 14:44

Re: Updater Prob
 
Hast du in der Datei mehrere Dateinen angegeben, dann solltest du das Memo mir einer Schleife durchgehen:

Delphi-Quellcode:
procedure ...
var
  i: Integer;
begin
...
  for i := 0 to Memo2.Lines.Count - 1 do
  begin
    Datei := Memo2.Lines[i];
    Ziel := Memo3.Lines[i];
    UrlDownloadToFile(nil, Datei, Ziel, 0, nil);
  end;
...
Außerdem wäre es besser, wenn du direkt eine TStringList, anstatt einem Memo nutzt, sofern die Einträge nicht sichtbar sein müssen.

MfG Pr0g

Neuni 9. Jun 2004 15:02

Re: Updater Prob
 
Ich denke der wesendliche Fehler lag darin, dass er
Code:
  Datei := ('memo2.lines');                             // Hier stimmt was nicht!
  Ziel := ('memo3.lines');                              // Hier stimmt was nicht!
Geschrieben hat, also das Memo2.lines in ' '

HW764 9. Jun 2004 15:13

Re: Updater Prob
 
Also wenn ich's so schreibe:

Delphi-Quellcode:
procedure TForm1.XiButton1Click(Sender: TObject);
var Datei, Ziel:PChar;
begin
  Memo1.lines.Add ('Update.. bitte einen moment warten...') ;
  Memo2.Lines.LoadFromFile('C:\Updater\File1.txt');
  Memo3.Lines.LoadFromFile('C:\Updater\File1Ziel.txt');
  Datei := memo2.text;                             // ??
  Ziel := memo3.text;                             // ??
  UrlDownloadToFile(nil, Datei, Ziel, 0, nil);
      // --------------------------------------------------
        ProgressBar1.Position:=ProgressBar1.Position+100;
      memo1.lines.Add ('==================================');
      memo1.lines.Add ('Download beendet!');
      memo1.lines.Add ('Vielen dank für die benutzung des Updaters!');
      memo1.lines.Add ('Update Komplett!');
 end;
Dann kommt die fehlermeldung : "Incompatible types TCaption and PAnsi Char" !!!

CalganX 9. Jun 2004 15:14

Re: Updater Prob
 
Hi,
Delphi-Quellcode:
Ziel := PChar(memo2.text); //oder
Ziel := @memo2.text[1];
Chris

HW764 9. Jun 2004 15:21

Re: Updater Prob
 
DANKE!!! VIELEN VIELEN DANK! YEEEHAW! *vorfreudeausdemfensterspring*
Kann geclosed werden! :cheers:

Pr0g 9. Jun 2004 15:22

Re: Updater Prob
 
Warum sollte der Beirag geschlossen werden? Vielleicht hat ein anderer User später noch eine Frage, die in irgend einer Weise zu dem Thread gehört.

HW764 9. Jun 2004 17:34

Re: Updater Prob
 
Sorry bin mich aus einem anderem Forum gehört, dass der Thread immer nach der
Frage geschlossen werden muss.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:57 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