aşağıdaki kod ile döviz kurlarını çekiyordum fakat son olan olaylardan sonra http://www.tcmb.gov.tr/kurlar/today.xml sayfa bir açılıyor bir açılmıyor kasıyor ve program arada bir hata veriyor nasıl çözebilirim fikri olan var mı acaba ?
teşekkürler.
Kod: Tümünü seç
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdHTTP;
type
TForm1 = class(TForm)
grp1: TGroupBox;
label2: TLabel;
label3: TLabel;
label4: TLabel;
label5: TLabel;
editUSD_ALIS: TEdit;
editUSD_SATIS: TEdit;
editEURO_ALIS: TEdit;
editEURO_SATIS: TEdit;
Button1: TButton;
IdHTTP1: TIdHTTP;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
Procedure KURLAR;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
////döviz kurları
Procedure TForm1.KURLAR;
var
ADRES,DEGER,ARA,SATIS:string;
YER:integer;
begin
ADRES:=IdHTTP1.Get('http://www.tcmb.gov.tr/kurlar/today.xml');
DEGER:=ADRES;
ARA:='ABD DOLARI'; /// SERBEST PİYASA ALIŞ
YER:=POS(ARA,DEGER);
YER:=YER+length(ARA);
DEGER:=COPY(DEGER,YER,LENGTH(DEGER)-YER);
DEGER:=TRIM(DEGER);
SATIS:=COPY(DEGER,1,LENGTH(DEGER)-YER);
ARA:='<ForexBuying>'; // SERBEST PİYASA ALIŞ
YER:=pos(ARA,DEGER);
YER:=YER+LENGTH(ARA);
DEGER:=COPY(DEGER,YER,LENGTH(DEGER)-YER);
DEGER:=TRIM(DEGER);
SATIS:=COPY(DEGER,1,LENGTH(DEGER)-YER);
editUSD_ALIS.Text :=COPY(SATIS,1,6); // sonuc
ARA:='ABD DOLARI'; /// SERBEST PİYASA SATIŞ
YER:=POS(ARA,DEGER);
YER:=YER+length(ARA);
DEGER:=COPY(DEGER,YER,LENGTH(DEGER)-YER);
DEGER:=TRIM(DEGER);
SATIS:=COPY(DEGER,1,LENGTH(DEGER)-YER);
ARA:='<ForexSelling>'; // SERBEST PİYASA SATIŞ
YER:=pos(ARA,DEGER);
YER:=YER+LENGTH(ARA);
DEGER:=COPY(DEGER,YER,LENGTH(DEGER)-YER);
DEGER:=TRIM(DEGER);
SATIS:=COPY(DEGER,1,LENGTH(DEGER)-YER);
editUSD_SATIS.Text :=COPY(SATIS,1,6); // sonuc
ARA:='EURO';
YER:=POS(ARA,DEGER);
YER:=YER+LENGTH(ARA);
DEGER:=COPY(DEGER,YER,LENGTH(DEGER)-YER);
DEGER:=TRIM(DEGER);
SATIS:=COPY(DEGER,1,LENGTH(DEGER)-YER);
ARA:='<ForexBuying>'; // Banka Alış Fiyatıdır.
YER:=POS(ARA,DEGER);
YER:=YER+LENGTH(ARA);
DEGER:=COPY(DEGER,YER,LENGTH(DEGER)-YER);
DEGER:=TRIM(DEGER);
SATIS:=COPY(DEGER,1,LENGTH(DEGER)-YER);
editEURO_ALIS.Text :=COPY(SATIS,1,6); // sonuc
ARA:='EURO';
YER:=POS(ARA,DEGER);
YER:=YER+LENGTH(ARA);
DEGER:=COPY(DEGER,YER,LENGTH(DEGER)-YER);
DEGER:=TRIM(DEGER);
SATIS:=COPY(DEGER,1,LENGTH(DEGER)-YER);
ARA:='<ForexSelling>'; // Banka Alış Fiyatıdır.
YER:=POS(ARA,DEGER);
YER:=YER+LENGTH(ARA);
DEGER:=COPY(DEGER,YER,LENGTH(DEGER)-YER);
DEGER:=TRIM(DEGER);
SATIS:=COPY(DEGER,1,LENGTH(DEGER)-YER);
editEURO_SATIS.Text :=COPY(SATIS,1,6); // sonuc
end;
/////////////bitiş
procedure TForm1.Button1Click(Sender: TObject);
begin
KURLAR;
end;
end.