LPWSPGETQOSBYNAME 回呼函式 (ws2spi.h)

WSPGetQOSByName 函式會根據具名範本初始化 QOS 結構,或擷取可用範本名稱的列舉。

語法

LPWSPGETQOSBYNAME Lpwspgetqosbyname;

BOOL Lpwspgetqosbyname(
  [in]      SOCKET s,
  [in, out] LPWSABUF lpQOSName,
  [out]     LPQOS lpQOS,
  [out]     LPINT lpErrno
)
{...}

參數

[in] s

識別套接字的描述項。

[in, out] lpQOSName

指定 QOS 範本名稱,或提供緩衝區來擷取可用範本名稱的列舉。

[out] lpQOS

要填滿 之 QOS 結構的指標。

[out] lpErrno

錯誤碼的指標。

傳回值

如果函式成功,則傳回值為 TRUE。 如果函式失敗,傳回值為 FALSE,且 lpErrno 中提供特定的錯誤碼。

錯誤碼 意義
WSAENETDOWN
網路子系統失敗。
WSAENOTSOCK
描述項不是套接字。
WSAENOTSOCK
lpQOS 自變數不是使用者位址空間的有效部分,或 lpQOS 的緩衝區長度太小。
WSAEINVAL
指定的 QOS 範本名稱無效。

備註

用戶端可以使用 WSPGetQOSByName ,將 QOS 結構初始化為一組適用於特定服務類別或媒體類型的已知值。 這些值會儲存在由已知名稱參考的範本中。 用戶端可以藉由將 lpQOSName 所指示的 WSABUF成員設定為指向指定範本名稱的非零長度 Unicode 字元串,以擷取這些值。 在此情況下, lpQOSName 的使用方式只有 IN,而且會透過 lpQOS 傳回結果。

或者,用戶端可以使用 LPWSPGetQOSByName 來擷取可用範本名稱的列舉。 用戶端可以藉由將 lpQOSName 所指示之 WSABUFbuf 成員設定為零長度的 Null 終止 Unicode 字串來執行此動作。 在此情況下,buf 所指示的緩衝區會以一連串以 Null 終止的 Unicode 範本名稱字串來覆寫,最多可達 buf 中可用位元組數目,如 lpQOSName 所指示之 WSABUFlen 成員所表示。 名稱本身的清單會以零長度 Unicode 名稱字串終止。 使用 LPWSPGetQOSByName 來擷取範本名稱時,會忽略 lpQOS 參數。

規格需求

需求
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
標頭 ws2spi.h

另請參閱

LPWSPAccept

LPWSPConnect

LPWSPGetSockopt