Najlepszym wykonaniem byłby plik ini ponieważ do uses dorzucam "Inifiles" i mam czynności takie jak np. pobieranie zawartości pliku.
Poprzez HTTPGet pobieram plik do folderu z programem, następnie pobieram zawartość, kopiuje do memo i usuwam plik ini.
//button click
HTTPGet1.URL :='http://www.strona.pl/plik.ini'; //lokalizacja pliku z informacją
//tutaj nie wiem co dać, może - "HTTPGet1.FileName := ExtractFilePath(Application.ExeName) + 'plik.ini';"
HTTPGet1.GetFile; //pobranie pliku ini
Teraz w zdarzeniu onDoneFile komponentu HttpGett:
var
INI : TINIFile;
//może coś jeszcze trzeba dodać
begin
INI := TINIFile.Create(HTTPGet1.FileName);
try
INI.ReadString('sekcja','',''); //odczytanie tekstu z pliku ini
begin
Memo1.Lines.Add(xxx); // tutaj nie wiem jak skopiować tekstu z pliku ini
//to jest tylko próba i przykład tego jak to może wyglądać
//potem dodaje kod usunięcia pliku ini - wiem jak to zrobić
Aktualizacja 5 luty 2012 - 15:07
Poradziłem sobie sam, trochę pomyślałem, popróbowałem i udało się!
Daję wam kod programu jak zrobić informację pobieraną z serwera ftp:
//|---------------------------|
//|--------By Scoti-----------|
//|---------------------------|
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, HTTPGet, StdCtrls, INIFiles;
type
TForm1 = class(TForm)
Memo1: TMemo;
HTTPGet1: THTTPGet;
procedure HTTPGet1DoneFile(Sender: TObject; FileName: String;
FileSize: Integer);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.HTTPGet1DoneFile(Sender: TObject; FileName: String;
FileSize: Integer);
var
INI : TINIFile;
begin
INI := TINIFile.Create(HTTPGet1.FileName);
try
Memo1.Clear;
Memo1.Lines.Add(INI.ReadString('Notes','I',''));
finally
INI.Free;
DeleteFile(HTTPGet1.FileName); //usunięcie pliku ini
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
HTTPGet1.URL := 'http://www.strona.pl/notes.ini'; //lokalizacja pliku z informacją
HTTPGet1.FileName := ExtractFilePath(Application.ExeName) + 'notes.ini';
HTTPGet1.GetFile; //pobranie pliku ini
end;
end.
Temat można zamknąć :)