Форум: "Сети";
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];
Внизметоды Socket и Connect (и т.п.) в модуле WinSock - как вызывать? Найти похожие ветки
← →
Диман (2001-11-28 12:14) [0]Здравствуйте все! Сильно не пинайте, но недавно я задавал вопрос как использовать методы (?) socket и connect. Ответ-то дали, но малоинформативный... Порекомендовали порыться в ScktComp.pas. Порылся. Ничего не понял. Поэтому очень прошу - объясните поподробней, лучше примером, как эти самые методы использовать.
Задача у меня простая - не используя компоненты NM (потому что глюкавые и много памяти жрут) посылать/принимать стримы.
Пишу такое:
procedure TForm1.Button1Click(Sender: TObject);
var
WSAData:TWSAData;
MySockAddr:sockaddr_in;
descriptor:integer;
addr_int:Cardinal;
begin
//активизируем WSAData... даже не знаю надо ли? поправьте
WSAStartup($1010,WSAData);
//строчку с инетовским адресом преобразуем в integer-число...
addr_int:=inet_addr(PChar("169.254.0.15"));
//и прописываем в структуре sockaddr_in...
MySockAddr.sin_addr.S_addr:=addr_int;
MySockAddr.sin_port:=500;
//которая нужна для коннекта
// а дальше как-то нужно использовать socket для создания нового соединения
//потом connect(descriptor,MySockAddr,длина - длина чего?);
WSACleanUp;
end;
вот с socket и connect ничего и не ясно. Помогите пожалуйста простым исходником где это все используется.
← →
Digitman (2001-11-28 12:44) [1]"Порылся. Ничего не понял"
Рылся ли ты вообще ? И пытался ли понять вообще ?
Эти строчки - из того же ScktComp.pas :
FSocket := socket(PF_INET, SOCK_STREAM, IPPROTO_IP); // создаем гнездо
WinSock.connect(FSocket, FAddr, SizeOf(FAddr)); //делаем попытку коннекта
Что же здесь непонятного ? Объясни, в чем проблема в понимании сего
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.004 c