Win32 API 日本語リファレンス
ホームMedia.WindowsMediaFormat › IWMClientConnections

IWMClientConnections

COM
IID73c66010-a299-41df-b1f0-ccf03b09c1c6継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

IWMClientConnections インターフェイスは、ライターネットワークシンクオブジェクトに接続されているクライアントに関する情報の収集を管理します。このインターフェイスはライターネットワークシンクオブジェクトによって公開されます。

メソッド 2

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT GetClientCount(DWORD* pcClients)

GetClientCount メソッドは、接続されているクライアントの数を取得します。

pcClientsDWORD*out接続されているクライアントの数へのポインター。

戻り値

このメソッドは HRESULT を返します。指定できる値には次の表に示すものが含まれますが、これらに限定されません。

戻り値コード 説明
S_OK
メソッドは成功しました。
NS_E_INVALID_REQUEST
ストリーミングがまだ開始されていません。
E_INVALIDARG
pcClients に null 値が渡されました。
vtbl 4 HRESULT GetClientProperties(DWORD dwClientNum, WM_CLIENT_PROPERTIES* pClientProperties)

GetClientProperties メソッドは、接続されているクライアントに関する情報 (IP アドレスやプロトコルを含む) を取得します。

dwClientNumDWORDinクライアントのインデックス番号を格納する DWORD
pClientPropertiesWM_CLIENT_PROPERTIES*outWM_CLIENT_PROPERTIES 構造体へのポインター。

戻り値

このメソッドは HRESULT を返します。指定できる値には次の表に示すものが含まれますが、これらに限定されません。

戻り値コード 説明
S_OK
メソッドは成功しました。
NS_E_INVALID_REQUEST
ストリーミングがまだ開始されていません。
E_INVALIDARG
pcClientProperties に null 値が渡されました。
NS_E_INVALID_CLIENT
クライアント数より大きいクライアント番号が渡されました。

または

原因不明の理由でクライアント情報の取得に失敗しました。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IWMClientConnections "{73C66010-A299-41DF-B1F0-CCF03B09C1C6}"
#usecom global IWMClientConnections IID_IWMClientConnections "{}"
#comfunc global IWMClientConnections_GetClientCount       3 var
#comfunc global IWMClientConnections_GetClientProperties  4 int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。