wsa是windows socket api簡稱
1 在delphi用這些api時,應先先明
wsastartup();//初始
wsacleanup;//登出
後面介紹一些簡單函式的使用
我也是學了再寫,說錯的地方指明,這既是自己的筆記
也是大家的參考
2、socket函式
用於生成socket(soket descriptor)
[宣告]
socket socket(int af,int type,int protocol);
[引數]
af - 位址家族(通常使用:af_inet)
type - socket的種類
sock_stream : 用於tcp協議
sock_dgram : 用於udp協議
protocol - 所使用的協議
[返回值]
當函式成功呼叫時返回乙個新的socket(socket descriptor)
失敗時返回invalid_socket.
3、inet_addr函式
把好象"***.***.***.***"的10進製的ip位址轉換為32位整數表示方法
[宣告]
unsigned long inet_addr ( const char far *cp );
[引數]
cp - 指向用"***.***.***.***"的10進製來表示的ip位址字串的指標
[返回值]
當函式成功呼叫時返回用32位整數表示的ip位址(按網路位元組排列順序)
失敗時返回inaddr_none.
4、gethostbyname函式
可以從主機名獲取主機資料.
[宣告]
struct hostent far * gethostbyname ( const char far *name );
[引數]
name - 指向主機名字串的指標
[返回值]
當函式成功呼叫時返回主機資訊
失敗時返回null(空值)
5、bind函式
指定本地ip位址所使用的埠號時候使用
[宣告]
int bind ( socket s , const struct sockaddr far *addr , int namelen );
[引數]
s - 指向用socket函式生成的socket descriptor
addr - 指向socket位址的指標
namelen - 該位址的長度.
[返回值]
當函式成功呼叫時返回0
呼叫失敗時返回 socket_error
6、connect函式
用於與伺服器建立連線,發出連線請求,必須在引數中指定伺服器的ip位址和埠號
[宣告]
int connect (socket s , const struct sockaddr far *name , int namelen );
[引數]
s - 指向用socket函式生成的socket descriptor
name - 指向伺服器位址的指標
namelen - 該位址的長度.
[返回值]
當函式成功呼叫時返回0
呼叫失敗時返回 socket_error
7、select函式
可以用於調查乙個或多個socket的狀態.
[宣告]
int select ( int nfds , fd_set far *readfds , fd_set far *writefds , fd_set far *exceptfds , const struct timeval far *timeout );
[引數]
nfds - 在windows socket api 中該引數可以忽略,通常賦予nill值
readfds - 由於接受的socket裝置的指標
writefds - 用於傳送資料的socket裝置的指標
exceptfds - 檢查錯誤的狀態
timeout - 超時設定
[返回值]
返回大於0的值時,表示與條件相符的socket數
返回0表示超時
失敗時返回socket_error
8、recv函式
利用socket進行接受資料.
[宣告]
int recv ( socket s , char far *buf , int len , int flags );
[引數]
s - 指向用socket函式生成的socket descriptor
buf - 接受資料的緩衝區(陣列)的指標
len - 緩衝區的大小
flag - 呼叫方式(msg_peek 或 msg_oob)
[返回值]
成功時返**到的位元組數.
如果連線被中斷則返回0
失敗時返回 socket_error
9、sendto函式
利用socket進行傳送資料.
[宣告]
int sendto ( socket s , const char far *buf , int len , int flags , const struct sockaddr far *to , int token );
[引數]
s - 指向用socket函式生成的socket descriptor
buf - 接受資料的緩衝區(陣列)的指標
len - 緩衝區的大小
flag - 呼叫方式(msg_dontroute , msg_oob)
to - 指向傳送方socket位址的指標
token - 傳送方socket位址的大小
[返回值]
成功時返回已經傳送的位元組數.
失敗時返回socket_error
Autofac的基本使用 1 前言
autofac的基本使用 目錄 本例中使用的是建構函式注入。屬性注入方式的配置與其差別不大,使用的例項使用建構函式或屬性中進行例項化。最後在註冊呼叫者後面加上.propertiesautowired 使用的autofac均使用nuget安裝。install package autofac versi...
「派生」的前言
前一篇,是 封裝 的尾巴 點我 這一篇,是 派生 的前奏 突然有一種七八月份的感覺 8.1.派生 型別和型別之間可以有很多關係,其中 派生 是最重要和最基礎的一種關係。這裡有一道小學語文題。輕鬆一刻 做小學題,學型別的派生關係 請照著1和 2中三個詞語的關係,從a b c d中選出乙個你認為合適的詞...
開通部落格前言
筆者準備用jbpm作為工作流的引擎,然後進一步進行封裝,最後準備將 進行開源特開通csdn的部落格和大家一起交流,相互學習,共同促進 是以jbpm 作為核心引擎,實現的輕量級的快速流程開發平台,在 jbpm 的基礎上定製開發了一系列的擴充套件元件,使得 jbpm 的使用更為簡單。這些擴充套件元件包括...