IComponentAuthenticate::SACAuth メソッド (mswmdm.h)
SACAuth メソッドは、コンポーネント間でセキュリティで保護された認証済みチャネルを確立します。
構文
HRESULT SACAuth(
[in] DWORD dwProtocolID,
[in] DWORD dwPass,
[in] BYTE *pbDataIn,
[in] DWORD dwDataInLen,
[out] BYTE **ppbDataOut,
[out] DWORD *pdwDataOutLen
);
パラメーター
[in] dwProtocolID
プロトコル識別子を含む DWORD。 このバージョンの Windows Media デバイス マネージャーでは、常にこのパラメーターを SAC_PROTOCOL_V1 に設定します。
[in] dwPass
現在の通信パスの番号を含む DWORD。 パスは、各方向に 1 つずつ、2 つのメッセージで構成されます。 SAC_PROTOCOL_V1は 2 パス プロトコルで、パスの番号は 0 と 1 です。
[in] pbDataIn
入力データへのポインター。
[in] dwDataInLen
pbDataIn が指すデータの長さを含む DWORD。
[out] ppbDataOut
出力データへのポインターへのポインター。
[out] pdwDataOutLen
ppbDataOut がポイントするデータの長さを含む DWORD へのポインター。
戻り値
このメソッドは HRESULT を返します。 Windows Media デバイス マネージャーのすべてのインターフェイス メソッドは、次のいずれかのエラー コード クラスを返すことができます。
- 標準 COM エラー コード
- HRESULT 値に変換された Windows エラー コード
- Windows Media デバイス マネージャー エラー コード
注釈
このメソッドは、サービス プロバイダーによってのみ呼び出されます。 これは、プロトコル識別子によって指示される 1 回以上呼び出されます。
pbDataIn と ppbDataOut のデータの構造は、dwProtocolID と dwPass の値によって決まります。
例
次の C++ コードは、サービス プロバイダーによる SACAuth の実装を示しています。 以前に作成したプライベート CSecureChannelServer メンバーで CSecureChannelServer::SACAuth を呼び出します。
HRESULT CMyServiceProvider::SACAuth(
DWORD dwProtocolID,
DWORD dwPass,
BYTE *pbDataIn,
DWORD dwDataInLen,
BYTE **ppbDataOut,
DWORD *pdwDataOutLen)
{
HRESULT hr = S_OK;
// Verify that the global CSecureChannelServer member is valid.
if(g_pAppSCServer == NULL)
return E_FAIL;
hr = g_pAppSCServer->SACAuth(
dwProtocolID,
dwPass,
pbDataIn, dwDataInLen,
ppbDataOut, pdwDataOutLen
);
return hr;
}
要件
要件 | 値 |
---|---|
対象プラットフォーム | Windows |
ヘッダー | mswmdm.h |
Library | Mssachlp.lib |