webForumDet fria alternativet

Flytta med värde.

Programmering

0 svar · 204 visningar · startad av AG

Medlem sedan mars 20001 266 inlägg
Frågan#1

Använder en komponent som heter ICS, som låter mig skicka, hämta data etc.
Nu har jag ett litet problem som jag tror är mer av logisk natur, och inte direkt komponentspecifikt.
Jag vill plocka ut det värde som jag får ut från GetURL.
Detta värde skall jag flytta med ner till "GetDATA" och sätta in i HttpCli1.URL.

Nedan följer några rader kod:

procedure TFlatbet.GetURL(Sender: TObject);
begin
  HttpCli1.URL        := 'http://127.0.0.1:8080/servlet/surebet.RandomServlet';
  HttpCli1.RcvdStream := TMemoryStream.Create;
  InfoLabel.Caption   := 'Loading';
  try
    try
      HttpCli1.Get;
      InfoLabel.Caption := 'Received ' +
                           IntToStr(HttpCli1.RcvdStream.Size) + ' bytes';
      SetLength(URL, HttpCli1.RcvdStream.Size);
      HttpCli1.RcvdStream.Position := 0;
      HttpCli1.RcvdStream.Read(URL[1],HttpCli1.RcvdStream.Size);
    except
      on E: EHttpException do
      begin
        InfoLabel.Caption := 'Failed : ' +
                             IntToStr(HttpCli1.StatusCode) + ' ' +
                             HttpCli1.ReasonPhrase;;
      end
      else
        raise;
      end;
  finally
    HttpCli1.RcvdStream.Destroy;
    HttpCli1.RcvdStream := nil;
  end;
end;

procedure TFlatbet.GetData(Sender: TObject);
begin
  HttpCli1.URL        := [b]HÄR VILL JAG HA VÄRDE FRÅN GETURL[/b];
  HttpCli1.RcvdStream := TMemoryStream.Create;
  InfoLabel.Caption   := 'Loading';
  Label1.Caption   := URL2+'asdfasdf';
  try
    try
      HttpCli1.Get;
      InfoLabel.Caption := 'Received ' +
                           IntToStr(HttpCli1.RcvdStream.Size) + ' bytes';
      HttpCli1.RcvdStream.Position := 0;
      try
        Image1.Picture.Bitmap.LoadFromStream(HttpCli1.RcvdStream);
      except
          InfoLabel.Caption := 'Failed : Can''t load banner'
      end;
    except
      on E: EHttpException do
      begin
        InfoLabel.Caption := 'Failed : ' +
                             IntToStr(HttpCli1.StatusCode) + ' ' +
                             HttpCli1.ReasonPhrase;;
      end
      else
        raise;
    end;
  finally
    HttpCli1.RcvdStream.Destroy;
    HttpCli1.RcvdStream := nil;
  end;
end;

Hoppas någon förstår hur jag menar, och kan flytta med värdet.

Andreas

259 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)