Текущий архив: 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.47 MB
Время: 0.037 c