WSAStartup函数
函數(shù)WSAStartup
一、WSAStartup函數(shù)
int WSAStartup
(
WORD wVersionRequested,
LPWSADATA lpWSAData
);
使
用Socket的程序在使用Socket之前必須調(diào)用WSAStartup函數(shù)。該函數(shù)的第一個(gè)參數(shù)指明程序請(qǐng)求使用的Socket版本,其中高位字節(jié)指
明副版本、低位字節(jié)指明主版本;操作系統(tǒng)利用第二個(gè)參數(shù)返回請(qǐng)求的Socket的版本信息。當(dāng)一個(gè)應(yīng)用程序調(diào)用WSAStartup函數(shù)時(shí),操作系統(tǒng)根據(jù)
請(qǐng)求的Socket版本來(lái)搜索相應(yīng)的Socket庫(kù),然后綁定找到的Socket庫(kù)到該應(yīng)用程序中。以后應(yīng)用程序就可以調(diào)用所請(qǐng)求的Socket庫(kù)中的其
它Socket函數(shù)了。該函數(shù)執(zhí)行成功后返回0。
例:假如一個(gè)程序要使用2.1版本的Socket,那么程序代碼如下
wVersionRequested = MAKEWORD( 2, 1 );
err = WSAStartup( wVersionRequested, &wsaData );
二、WSACleanup函數(shù)
int WSACleanup (void);
應(yīng)用程序在完成對(duì)請(qǐng)求的Socket庫(kù)的使用后,要調(diào)用WSACleanup函數(shù)來(lái)解除與Socket庫(kù)的綁定并且釋放Socket庫(kù)所占用的系統(tǒng)資源。
三 Socket接口的檢索有關(guān)域名、通信服務(wù)和協(xié)議等Internet信息的數(shù)據(jù)庫(kù)函數(shù),如
gethostbyaddr、gethostbyname、gethostname、getprotolbyname
getprotolbynumber、getserverbyname、getservbyport。
1.gethostname()
【函數(shù)原型】
int PASCAL FAR gethostname (char FAR * name, int namelen);
【使用說(shuō)明】
該函數(shù)可以獲取本地主機(jī)的主機(jī)名,其中:
name:<輸出>用于指向所獲取的主機(jī)名的緩沖區(qū)的指針。
Namelen:<輸入>緩沖區(qū)的大小,以字節(jié)為單位。
返回值:若無(wú)錯(cuò)誤,返回0;否則,返回錯(cuò)誤代嗎。
2.gethostbyname()
【函數(shù)原型】
struct hostent FAR * PASCAL FAR gethostbyname(const char FAR * name);
【使用說(shuō)明】
該函數(shù)可以從主機(jī)名數(shù)據(jù)庫(kù)中得到對(duì)應(yīng)的“主機(jī)”。
該函數(shù)唯一的參數(shù)name就是前面調(diào)用函數(shù)gethostname()得到的主機(jī)名。若無(wú)錯(cuò)誤,剛返回一個(gè)指向hostent結(jié)構(gòu)的批針,它可以標(biāo)識(shí)一個(gè)“主機(jī)”列表。
總結(jié)
以上是生活随笔為你收集整理的WSAStartup函数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 红旗H5新车刚出4S店就冒烟!4S:无法
- 下一篇: 使用keras的LSTM进行预测----