Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Socks5 запрос(winsock) 
:(
    Опции темы
ruuit
Дата 4.6.2009, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 2.6.2009

Репутация: нет
Всего: нет



Нужно подключиться к серверу через прокси.
Вот, что написал(в соотв. с RFC) :
Код

var
  wData: WSAData;
  S: TSocket;
  addr: sockaddr_in;
  SendBuff: String;
  buff: array[1..1024] of char;
  proxy_port, proxy_host, host: string;
begin
  Proxy_host:='127.0.0.1';
  Proxy_port:=1080;
  Host:='site.com';
  If WSAStartUp($0101, wData) <> 0 then
  begin
    MessageDLG('winsock library not found.',mtError,[mbOK],0);
    exit;
  end;
  s:= Socket(AF_INET, Sock_STREAM, ipPROTO_TCP);
  If S = Invalid_Socket then begin
    ShowMessage('socket error#'+IntToStr(WSAGetLastError));
    CloseSocket(s);
    Exit;
  end;
  FillChar(addr, sizeOF(sockaddr_in),0);
  Addr.sin_family:=af_INET;
  Addr.sin_port:=hTons(Proxy_port);
  Addr.sin_addr.S_addr:=Inet_ADDR(Proxy_host);
  Connect(s, addr, SizeOf(TSockAddr));
  SendBuff:=#5#1#0;
  send(s, SendBuff[1], 3, 0);
  recv(s, buff, 2, 0);
  If (buff[1] <> #5) or (buff[2] <> #0) then begin
    ShowMessage('Connect error!');
    exit;
  end;
  SendBuff:=#5#1#0#3+chr(length(host))+host+chr(proxy_port div 256)+
    char(proxy_port mod 256);
  send(s, SendBuff[1], Length(SendBuff), 0);
  recv(s, buff, SizeOf(Buff), 0);
  if (buff[1] <> #5) or (buff[2] <> #0) then
    Memo1.Text:='connect!' 
  else
      Memo1.Text:='failed!';
  CloseSocket(s);
  ShutDown(s, SD_BOTH);
  WSACleanUp;

Но всё запарывается уже на первом пункте. Если кто знает где ошибка, помогите пожалуйста.
PM MAIL   Вверх
dvamaster
Дата 9.6.2009, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 559
Регистрация: 30.6.2004
Где: Россия : Курган

Репутация: 2
Всего: 10



Какая Delphi?


--------------------
Хорошую информацию трудно добыть. Сделать с ней что-нибудь - еще труднее. /L. Skywalker/

Что же я сделал не так? /Король Лир/

Я делаю это для твоего же блага! /Любой родитель и палач/

PKUNZIP.ZIP /неизвестный/
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0435 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.