次の方法で共有


RpcNsBindingLookupBeginA 関数 (rpcnsi.h)

RpcNsBindingLookupBegin 関数は、インターフェイスとオブジェクトの参照コンテキストを作成します。

この機能は、Windows Vista 以降のオペレーティング システムではサポートされていません。
 

構文

RPC_STATUS RpcNsBindingLookupBeginA(
  unsigned long EntryNameSyntax,
  RPC_CSTR      EntryName,
  RPC_IF_HANDLE IfSpec,
  UUID          *ObjUuid,
  unsigned long BindingMaxCount,
  RPC_NS_HANDLE *LookupContext
);

パラメーター

EntryNameSyntax

EntryName パラメーターの構文。

レジストリ値エントリ HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntaxで指定された構文を使用するには、RPC_C_NS_SYNTAX_DEFAULTの値を指定します。

EntryName

互換性のあるバインディングの検索が開始されるエントリ名へのポインター。

レジストリ値エントリ HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultEntryで指定されたエントリ名を使用するには、null ポインターまたは空の文字列を指定します。 この場合、EntryNameSyntax パラメーターは無視され、ランタイム ライブラリでは既定の構文が使用されます。

IfSpec

検索するインターフェイスを示すスタブ生成構造体。 インターフェイスの指定がエクスポートされていないか、呼び出し元に問題がない場合は、このパラメーターに null 値を指定します。 この場合、返されるバインディングは、互換性があり、サポートされているプロトコル シーケンスであり、指定されたオブジェクト UUID が含まれていることのみが保証されます。 必要なインターフェイスが、接続されているサーバーでサポートされていない可能性があります。

ObjUuid

省略可能なオブジェクト UUID へのポインター。

0 以外の UUID の場合、互換性のあるバインド ハンドルは、サーバーが指定したオブジェクト UUID をエクスポートした場合にのみエントリから返されます。

このパラメーターの null ポインター値または nil UUID の場合、返されるバインディング ハンドルには、互換性のあるサーバーによってエクスポートされたオブジェクト UUID のいずれかが含まれます。 サーバーがオブジェクト UUID をエクスポートしなかった場合、返される互換性のあるバインド ハンドルには nil オブジェクト UUID が含まれます。

BindingMaxCount

RpcNsBindingLookupNext 関数から BindingVec パラメーターで返されるバインディングの最大数。

RPC_C_BINDING_MAX_COUNT_DEFAULTの既定のカウントを使用するには、値 0 を指定します。

LookupContext

RpcNsBindingLookupNext および RpcNsBindingLookupDone 関数で使用する名前サービス ハンドルへのポインター 返します。

戻り値

価値 意味
RPC_S_OK
呼び出しは成功しました。
RPC_S_INVALID_NAME_SYNTAX
名前の構文が無効です。
RPC_S_UNSUPPORTED_NAME_SYNTAX
名前の構文はサポートされていません。
RPC_S_INCOMPLETE_NAME
名前が不完全です。
RPC_S_ENTRY_NOT_FOUND
name-service エントリが見つかりませんでした。
RPC_S_NAME_SERVICE_UNAVAILABLE
ネーム サービスは使用できません。
RPC_S_INVALID_OBJECT
無効なオブジェクトです。
 
有効なエラー コードの一覧については、「RPC 戻り値」を参照してください。
 

備考

RpcNsBindingLookupBegin 関数は、指定されたインターフェイスとオブジェクトを提供するサーバーにクライアント互換のバインド ハンドルを検索するための参照コンテキストを作成します。

RpcNsBindingLookupNext呼び出す前に、クライアント アプリケーションはまず RpcNsBindingLookupBegin 呼び出して参照コンテキストを作成する必要があります。 この関数のパラメーターは、RpcNsBindingLookupNext 関数の操作を制御します。

Windows 2000 で有効な RPC 環境では、Active Directory を名前サービス データベースとして使用し、実行時環境が検索を実行する順序は次のとおりです。

  • ローカル キャッシュで検索します。
  • ローカル キャッシュにエントリが見つからない場合は、そのマシンの Active Directory を検索します。
  • ローカル コンピューターでエントリが見つからない場合は、ドメイン内の他のすべての Active Directory サービスにブロードキャスト要求を送信します。

    エントリが Active Directory に存在するが、エントリに関連付けられている情報がない場合、実行時環境はこのブロードキャスト要求を発行しないことに注意してください。

バインド ハンドルの検索が完了すると、クライアント アプリケーションは RpcNsBindingLookupDone 関数を呼び出して、参照コンテキストを削除します。

手記

rpcnsi.h ヘッダーは、RpcNsBindingLookupBegin を、UNICODE プリプロセッサ定数の定義に基づいてこの関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー rpcnsi.h (Rpc.h を含む)
ライブラリ Rpcns4.lib
DLL Rpcns4.dll

関連項目

RpcNsBindingLookupDone を する

RpcNsBindingLookupNext