Share via


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 で示される WSABUFbuf メンバーを、テンプレート名を指定する 0 以外の長さの Unicode 文字列を指すよう設定することで、これらの値を取得できます。 この場合、 lpQOSName の使用は IN のみであり、結果は lpQOS を介して返されます。

または、クライアントで LPWSPGetQOSByName を使用して、使用可能なテンプレート名の列挙を取得することもできます。 クライアントは、lpQOSName で示される WSABUFbuf メンバーを長さ 0 の null で終わる Unicode 文字列に設定することで、これを行うことができます。 この場合、buf によって示されるバッファーは、lpQOSName で示される WSABUFlen メンバーによって示される buf で使用可能なバイト数まで使用可能な数の null で終わる Unicode テンプレート名文字列のシーケンスで上書きされます。 名前のリスト自体は、長さ 0 の Unicode 名前文字列で終わる。 LPWSPGetQOSByName を使用してテンプレート名を取得する場合、lpQOS パラメーターは無視されます。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
Header ws2spi.h

こちらもご覧ください

LPWSPAccept

LPWSPConnect

LPWSPGetSockopt