共用方式為


PROTOCOL_INFOA結構 (nspapi.h)

PROTOCOL_INFO 結構包含通訊協議的相關信息。

語法

typedef struct _PROTOCOL_INFOA {
  DWORD dwServiceFlags;
  INT   iAddressFamily;
  INT   iMaxSockAddr;
  INT   iMinSockAddr;
  INT   iSocketType;
  INT   iProtocol;
  DWORD dwMessageSize;
  LPSTR lpProtocol;
} PROTOCOL_INFOA, *PPROTOCOL_INFOA, *LPPROTOCOL_INFOA;

成員

dwServiceFlags

類型:DWORD

一組位旗標,指定通訊協定所提供的服務。 可以設定下列一或多個位旗標。

價值 意義
XP_CONNECTIONLESS
如果設定此旗標,通訊協定會提供無連線 (datagram) 服務。 如果此旗標清楚,通訊協定會提供連線導向的數據傳輸。
XP_GUARANTEED_DELIVERY
如果設定此旗標,通訊協議會保證傳送的所有數據都會到達預期的目的地。 如果此旗標清楚,則沒有這種保證。
XP_GUARANTEED_ORDER
如果設定此旗標,通訊協定會保證數據會依傳送的順序抵達。 請注意,此特性不保證數據傳遞,只有其訂單。 如果此旗標清楚,則不會保證傳送的數據順序。
XP_MESSAGE_ORIENTED
如果設定此旗標,則通訊協定為訊息導向。 訊息導向通訊協定會接受訊息界限。 如果此旗標清楚,通訊協議會導向數據流,而且訊息界限的概念無關緊要。
XP_PSEUDO_STREAM
如果設定此旗標,則通訊協定是訊息導向通訊協定,會忽略所有接收作業的訊息界限。

當您不想讓通訊協定框架訊息時,這個選擇性功能很有用。 需要數據流導向特性的應用程式可以針對支援這項功能的傳輸通訊協議開啟類型為 SOCK_STREAM的套接字,而不論 iSocketType的值為何。

XP_GRACEFUL_CLOSE
如果設定此旗標,通訊協定支援兩階段關閉作業,也稱為正常關閉作業。 如果此旗標清楚,通訊協定僅支援中止的關閉作業。
XP_EXPEDITED_DATA
如果設定此旗標,通訊協定支援加速數據,也稱為緊急數據。
XP_CONNECT_DATA
如果設定此旗標,通訊協定支援連接數據。
XP_DISCONNECT_DATA
如果設定此旗標,通訊協定支援中斷聯機數據。
XP_SUPPORTS_BROADCAST
如果設定此旗標,通訊協定支援廣播機制。
XP_SUPPORTS_MULTICAST
如果設定此旗標,通訊協議支援多播機制。
XP_BANDWIDTH_ALLOCATION
如果設定此旗標,通訊協定支援將保證頻寬配置給應用程式的機制。
XP_FRAGMENTATION
如果設定此旗標,通訊協定支援訊息片段;實體網路 MTU 會從應用程式隱藏。
XP_ENCRYPTS
如果設定此旗標,通訊協定支持數據加密。

iAddressFamily

類型:INT

當呼叫 套接字 函式以開啟通訊協定的套接字時,要傳遞為 af 參數的值。 這個位址系列值會唯一定義通訊協定地址的結構,也稱為 sockaddr 結構,由通訊協定使用。

iMaxSockAddr

類型:INT

通訊協議支援的套接字位址長度上限,以位元組為單位。

iMinSockAddr

類型:INT

通訊協議支援的套接字位址長度下限,以位元組為單位。

iSocketType

類型:INT

當呼叫 套接字 函式以開啟通訊協定的套接字時,要傳遞為 型別 參數的值。

請注意,如果XP_PSEUDO_STREAM設定於 dwServiceFlags中,應用程式可以將 SOCK_STREAM 指定為 類型 參數,以 套接字,而不論 iSocketType的值為何。

iProtocol

類型:INT

當呼叫 套接字 函式以開啟通訊協定的套接字時,要當做 通訊協定 參數傳遞的值。

dwMessageSize

類型:DWORD

通訊協議支援的訊息大小上限,以位元組為單位。 這是主機可以傳送或接收之訊息的大小上限。 對於不支援訊息框架的通訊協定,可以傳送至指定位址之訊息的實際大小上限可能小於此值。

定義下列特殊訊息大小值。

價值 意義
0
通訊協議為數據流導向;訊息大小的概念不相關。
0xFFFFFFFF
通訊協定是訊息導向,但沒有訊息大小上限。

lpProtocol

類型:LPTSTR

為通訊協定提供名稱之零終止字串的指標;例如,“SPX2”。

言論

注意

nspapi.h 標頭會將PROTOCOL_INFO定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
支援的最低伺服器 Windows 2000 Server [僅限傳統型應用程式]
標頭 nspapi.h

另請參閱

EnumProtocols

套接字