次の方法で共有


NdisClRegisterSap 関数 (ndis.h)

NdisClRegisterSap は、クライアントがリモート ノードからの着信呼び出しを受信できる SAP を登録します。

構文

NDIS_STATUS NdisClRegisterSap(
  [in]  NDIS_HANDLE  NdisAfHandle,
  [in]  NDIS_HANDLE  ProtocolSapContext,
  [in]  PCO_SAP      Sap,
  [out] PNDIS_HANDLE NdisSapHandle
);

パラメーター

[in] NdisAfHandle

NDISClOpenAddressFamilyEx によって返されるハンドルを指定します。これは、SAP を登録する呼び出しマネージャーを暗黙的に識別します。

[in] ProtocolSapContext

開いた後にクライアントがこの SAP の状態を維持する、呼び出し元が指定した常駐コンテキスト領域へのハンドルを指定します。 NDIS は、 NdisClRegisterSap への呼び出しが成功した場合、この SAP に関する後続のすべての呼び出しで、このハンドルをクライアントに渡します。

[in] Sap

CO_SAP 型の構造体として書式設定された、開く SAP のクライアント提供の仕様へのポインター。

[out] NdisSapHandle

この呼び出しが成功した場合に、新しく登録された SAP へのハンドルが返される変数へのポインター。

戻り値

NdisClRegisterSap がNDIS_STATUS_PENDING以外のものを返す場合、クライアントは、 の内部呼び出しを行う必要があります。 ProtocolClRegisterSapComplete 関数。 それ以外の場合、NDIS は、この操作が完了したときにクライアントの ProtocolClRegisterSapComplete 関数を呼び出します。

注釈

NdisClRegisterSap を呼び出すと、クライアントは特定の SAP での着信呼び出しの通知を要求します。 NDIS は、指定された SAP 情報を、検証のために呼び出しマネージャーの ProtocolCmRegisterSap 関数に転送します。 指定された SAP が既に使用されている場合、または呼び出しマネージャーが Sap でクライアント指定の仕様を認識しない場合、呼び出しマネージャーはこの要求を失敗します。

SAP 形式は中程度に依存し、通話マネージャーによってサポートされるアドレス ファミリに固有です。このアドレス ファミリは、登録された SAP を使用して、その後、着信呼び出しを適切なクライアントにルーティングします。 通話マネージャーは、基になるメディアに応じて、他のネットワーク コンポーネントに接続することなく、確立された PVC の SAP を登録できます。

NdisClRegisterSap の呼び出しが成功した場合、クライアントは NdisSapHandle で返されたハンドルを保存する必要があります。これは、NdisClDeregisterSap に必要なパラメーターであるためです。 NdisClRegisterSap の呼び出し元は通常、ProtocolSapContext のクライアント割り当て状態領域の変数へのポインターを渡して、この呼び出しが成功した場合に NDIS が NdisSapHandle に設定できるようにします。 NDIS は、クライアントが NdisClDeregisterSap を呼び出すまで、この SAP に関する後続のすべての呼び出しで、指定された ProtocolSapContext をクライアントの登録済み ProtocolCl/CoXxx 関数に渡します。

通常、クライアントは NdisClOpenAddressFamilyEx への正常な呼び出しに続いて、ProtocolAfRegisterNotify 関数から NdisClRegisterSap を呼び出します。 1 つ以上の SAP を登録すると、クライアントは、呼び出しマネージャーがネットワーク経由でそれらを受信するとすぐに着信呼び出しを受信できます。

クライアントによって開始される発信呼び出しとは対照的に、クライアントは NdisClRegisterSap を呼び出す前に NdisCoCreateVc を呼び出しません。 着信呼び出しの場合、呼び出しマネージャーは次のように VC の作成を開始します。

  • 登録されている SAP で着信呼び出しを受信すると、呼び出しマネージャーは最初に NdisCoCreateVc を呼び出し、NDIS はクライアントの ProtocolCoCreateVc 関数を呼び出します。
  • VC を設定してアクティブ化すると、呼び出しマネージャーは NdisCmDispatchIncomingCall を呼び出し、NDIS はクライアントの を呼び出します。 ProtocolClIncomingCall 関数。

要件

要件
サポートされている最小のクライアント Windows Vista の NDIS 6.0 ドライバーと NDIS 5.1 ドライバー (NdisClRegisterSap (NDIS 5.1) を参照) でサポートされています。 Windows XP での NDIS 5.1 ドライバー (「NdisClRegisterSap (NDIS 5.1)」を参照) でサポートされています。
対象プラットフォーム デスクトップ
Header ndis.h (Ndis.h を含む)
Library Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI コンプライアンス規則 Irql_Protocol_Driver_Function(ndis)

こちらもご覧ください

CO_SAP

NdisClDeregisterSap

NdisClMakeCall

NdisCmDispatchIncomingCall

NdisCoCreateVc

ProtocolClIncomingCall

ProtocolClRegisterSapComplete

ProtocolCmRegisterSap

ProtocolCoAfRegisterNotify

ProtocolCoCreateVc