Вниз
Скачать: CL | DM;

не работает запрос по TCP   Найти похожие ветки 

← →
Ыфь86   (2010-03-14 11:51) [0]

Валится на connect, хотя putty с теми же параметрами спокойно подключается.
Function SendRequest(Request:string; Port:integer; const IP:string):string;
var
 sockfd, portno, n:integer;
 serv_addr:sockaddr_in;
 server:Phostent;

begin
 portno := Port;
 sockfd := socket(AF_INET, SOCK_STREAM, 0);
 if (sockfd < 0) then
    raise Exception.Create("ERROR opening socket");
 server := gethostbyname(PChar(IP));
 if (server = nil) then
   raise Exception.Create("ERROR, no such host");
 ZeroMemory(@serv_addr,sizeof(serv_addr));
 serv_addr.sin_family := AF_INET;
 CopyMemory(@serv_addr.sin_addr.s_addr,server.h_addr,server.h_length);
 serv_addr.sin_port := htons(portno);
 if (connect(sockfd,serv_addr,sizeof(serv_addr)) < 0) then
   raise Exception.Create("ERROR connecting");
 n:=send(sockfd,Request[1],Length(Request),0);
 if (n < 0) then
   raise Exception.Create("ERROR writing to socket");
 ZeroMemory(@buffer[0],65535);
 n:=recv(sockfd,buffer[0],65535,0);
 Result:="";
 if (n > 0) then begin
   SetLength(Result,n);
   CopyMemory(@Result[1],@buffer[0],n);
 end;
 closesocket(sockfd);
end;


← →
Ыфь86   (2010-03-14 14:50) [1]

IP это 127.0.0.1 и еще localhost пробовал.
А судя по показаниям сетевого монитора соединение устанавливается с 156.138.58.0
ничего не понимаю...


← →
Anatoly Podgoretsky ©   (2010-03-14 15:36) [2]

Если ты уверен, что ИП=127.0.0.1 то у тебя вирус.


← →
Ыфь86   (2010-03-14 15:59) [3]

В putty я тоже 127.0.0.1 ввоожу и все норм.
Первым делом подумал на свою ошибку... Потом на вирус, если я использую любой IP то всегнда стучится на 156.138.58.0, если указываю каком нибудь хост, то несколько вариантов IP получается вида: X.139.58.0
Что это может быть за вирус и как его вычислить?
Гугл как-то не выдает ничего в тему...


← →
Anatoly Podgoretsky ©   (2010-03-14 16:14) [4]

> Ыфь86  (14.03.2010 15:59:03)  [3]

Это шлюз Макдоналдса


← →
oldman ©   (2010-03-14 16:19) [5]

IP Information - 156.138.58.0
Country United States  
Country Code US
Region Ohio
City Columbus
Postal Code 43215
Latitude 39.9653
Longitude -83.0235
Area Code 614
DMA Code 535


← →
@!!ex ©   (2010-03-15 19:15) [6]

Вот здесь проблема:
CopyMemory(@serv_addr.sin_addr.s_addr,server.h_addr,server.h_length);
тут указатель на указатель, поэтому должно быть:
CopyMemory(@serv_addr.sin_addr.s_addr,server.h_addr^,server.h_length);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.042 c
2-1268459445
dj kondakov
2010-03-13 08:50
2010.08.27
Глюк с отображением вкладок PageControl a


6-1217400351
workbench
2008-07-30 10:45
2010.08.27
TNMSMTP


15-1267636807
Kerk
2010-03-03 20:20
2010.08.27
А какая сейчас мобильная платформа самая перспективная?


15-1272949646
KSergey
2010-05-04 09:07
2010.08.27
Google code: только OpenSource или нет?


15-1265084562
Дмитрий С
2010-02-02 07:22
2010.08.27
Что делать, если на шлюзе не хватает портов для трансляции?




   Наверх