
26.07.2010, 14:52
|
 |
Let Me Show You
|
|
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
|
|
Код:
unit Unit1;
interface
uses
StrUtils,
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
ScktComp, StdCtrls;
type
TForm1 = class(TForm)
ClientSocket1: TClientSocket;
Memo1: TMemo;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var
savetickcount: Cardinal;
begin
// будем использовать блокируемый сокет
ClientSocket1.ClientType:=ctBlocking;
ClientSocket1.Host:='ya.ru';
ClientSocket1.Port:=80;
ClientSocket1.Open;
ClientSocket1.Socket.SendText('GET / HTTP/1.1'#13#10'Host: ya.ru'#13#10'User-Agent: Mozilla/4.0'#13#10#13#10);
savetickcount:=GetTickCount;
// ждем не более 1 минуты, т.е. 60000 мс
while (GetTickCount-savetickcount<60000) do
begin
// ReceiveLength не блокируемый метод
if ClientSocket1.Socket.ReceiveLength>0 then
begin
Memo1.Text:=Memo1.Text+ClientSocket1.Socket.ReceiveText;
// как только встретили конец страницы "</html>" то выходим
if AnsiEndsStr('</html>', Memo1.Text) then Break;
end;
end;
ClientSocket1.Close;
end;
end.
замени
Код:
// как только встретили конец страницы "</html>" то выходим
if AnsiEndsStr('</html>', Memo1.Text) then Break;
на нужное тебе
|