當
socket()
函式返回
invalid_socket
時,呼叫
showerrormsg()
函式顯示呼叫失敗的原因。建立套接字程式清單如下。
//建立
windows socket
shost = socket(af_inet, sock_stream, ipproto_tcp);
if(invalid_socket == shost)
在showerrormsg()
函式中,以
wsagetlasterror()
函式的返回值為引數,呼叫
formatmessage()
函式,獲得錯誤的文字字串。
showerrormsg
函式程式清單如下。
/**
顯示錯誤資訊
*/voidshowerrormsg(void)
}
18 3 2 建立套接字
套接字是通過標準的 unix 檔案描述符和其他的程式通訊的乙個方法。套接字在使用前必須先被建立,建立套接字的系統呼叫為 socket 它的一般形式是 int socket int domain,int type,int protocol 建立出來的套接字是一條通訊線路的乙個端點,domain 引數負...
建立套接字失敗
if afxsocketinit 執行程式,會發現彈出對話方塊 載入套接字型檔失敗。原因是因為該段 新增的位置不對。必須寫在initinstance函式的開始位置,建立視窗前 考慮到afxsocketinit 函式只能載入1.1版本的套接字型檔,若要載入其他版本的套接字型檔,則需要新增如下 word...
18 3 5 建立套接字佇列
為了能夠在套接字上接受接入的連線,伺服器程式必須建立乙個佇列來儲存到達的請求。建立佇列可使用系統呼叫 listen 完成,它的一般形式為 int listen int socket,int backlog linux 系統可能會對佇列裡能夠容納的排隊連線的最大個數有限制。在這個最大值的範圍內,lis...