Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.08;
Скачать: CL | DM;

Вниз

WSASocket   Найти похожие ветки 

 
Pavel   (2004-06-03 20:41) [0]

Уважаемые мастера. Вопрос такой. Какая разница между функциями WSASocket и socket. И вообще что значит эта приставка WSA?  И почему в файле winsock.dcu WSASocket не определено?


 
Rouse_ ©   (2004-06-03 21:04) [1]

Первые в большинстве своем представляют расширения Bercley сокета и являются асинхронными, вторые - обычные линуксовые сокеты...
(Это так, на пальцах обьяснение)


 
Micah'GF   (2004-06-03 21:04) [2]

ты путаешь с WSAStartup
WSAStartup нужно обязятельно делать перед началом использования функций Winsock - это инициализация библиотеки. В конце обязательно WSACleanup

почитай описание сокетов -- найдешь на яндексе.


 
Rouse_ ©   (2004-06-03 21:09) [3]

> [2] Micah"GF   (03.06.04 21:04)
Это ты мне?


 
Pavel   (2004-06-03 21:29) [4]

Почему приставка WSA я разобрался. Это для асенхронных соединений. А нужен мне WSAsocket для того чтобы сделать сокет асинхронным. Но почему эта функция не описана в winsock.dcu. Может она описана в каком то другом файле. Или это вообще не входит в стандартный пакет Delphi7 ?


 
Rouse_ ©   (2004-06-03 23:01) [5]

> [4] Pavel   (03.06.04 21:29)
Тормози, видно что ты начитался, да не все понял ...
Нет такого понятия асинхронный сокет. Сокет он и в африке сокет, а вот режим ты можешь задать блокирующий, неблокирующий и асинхронный.
Аснинхронка - расширение неблокирующего режима в котором при изменении состояния гнезда ты будешь получать нотификационные сообщения от ситемы...
К примеру: готов читать, готов писать...


 
Rouse_ ©   (2004-06-03 23:36) [6]

В Дополнение, вот тебе описание:

WSASocket
The Windows Sockets WSASocket function creates a socket that is bound to a specific transport-service provider.

SOCKET WSASocket(
 int af,
 int type,
 int protocol,
 LPWSAPROTOCOL_INFO lpProtocolInfo,
 GROUP g,
 DWORD dwFlags
);

...

WSAPROTOCOL_INFO
The Windows Sockets WSAPROTOCOL_INFO structure is used to store or retrieve complete information for a given protocol.

typedef struct _WSAPROTOCOL_INFO {
 DWORD                dwServiceFlags1;
 DWORD                dwServiceFlags2;
 DWORD                dwServiceFlags3;
 DWORD                dwServiceFlags4;
 DWORD                dwProviderFlags;
 GUID                 ProviderId;
 DWORD                dwCatalogEntryId;
 WSAPROTOCOLCHAIN     ProtocolChain;
 int                  iVersion;
 int                  iAddressFamily;
 int                  iMaxSockAddr;
 int                  iMinSockAddr;
 int                  iSocketType;
 int                  iProtocol;
 int                  iProtocolMaxOffset;
 int                  iNetworkByteOrder;
 int                  iSecurityScheme;
 DWORD                dwMessageSize;
 DWORD                dwProviderReserved;
 TCHAR                szProtocol[WSAPROTOCOL_LEN+1];
} WSAPROTOCOL_INFO, *LPWSAPROTOCOL_INFO;


---
Желаю успехов


 
Pavel   (2004-06-04 00:41) [7]

За всё выше написанное большое спасибо но всё же. В каком модуле онисана проседура WSASocket. Или это есть только под C.


 
Digitman ©   (2004-06-04 08:15) [8]


> Pavel   (04.06.04 00:41) [7]



> В каком модуле онисана проседура WSASocket


winsock2.pas


 
Григорьев Антон   (2004-06-04 12:37) [9]


> Digitman ©   (04.06.04 08:15) [8]
>
> > Pavel   (04.06.04 00:41) [7]
>
>
>
> > В каком модуле онисана проседура WSASocket
>
>
> winsock2.pas


А где этот самый WinSock2.pas взять? У меня на компьютере полная коллекция Delphi от 3-ей до 7-ой версии, и нигде его нет. Есть только WinSock.pas, в котором поддержка Windows Sockets 1.1.


 
Verg ©   (2004-06-04 12:45) [10]

Я думаю, что WSASocket нужен только в контексте WSADuplicateSocket.
Асинхронные режимы устанавливаются у сокетов отдельно ф-циями WSAEventSelect и WSAAsyncSelect и для этого вовсе необязатьельно лезть в Winsock2.


 
Verg ©   (2004-06-04 12:47) [11]

Тем не менее, Winsock2 можно взять на
http://home.earthlink.net/~akonshin/delphi_ru.htm



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

Текущий архив: 2004.08.08;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.038 c
3-1089911309
kaif
2004-07-15 21:08
2004.08.08
Не работают Lookup-поля, если есть поля вида fkInternalCalc !


4-1088091605
Dextor
2004-06-24 19:40
2004.08.08
PopupMenu WINDOWS


1-1090599456
Ivolg
2004-07-23 20:17
2004.08.08
Кнопка на клаве


6-1086682066
anton.
2004-06-08 12:07
2004.08.08
TCPServer


14-1090506373
DSKalugin
2004-07-22 18:26
2004.08.08
платформа .NET Стоит ли переходить?