英語で読む

次の方法で共有


ncacn_np属性

ncacn_np キーワード (keyword)は、名前付きパイプをエンドポイントのプロトコル ファミリとして識別します。

endpoint("ncacn_np:server-name[\\pipe\\pipe-name]")

パラメーター

server-name

省略可能。 サーバーの名前を指定します。 円記号は省略可能です。

pipe-name

有効なパイプ名を指定します。 有効なパイプ名は、円記号で区切られた識別子を含む文字列です。 最初の識別子は パイプである必要があります。 各識別子は、2 つの円記号で区切る必要があります。

解説

サーバーは名前付きパイプのインスタンスを作成し、そのインスタンスを任意のクライアントで使用できます。 クライアントが接続しようとすると、既存のインスタンスがそのクライアントに関連付けられます。 別のクライアントが接続する前に、サーバーは名前付きパイプの別のインスタンスを作成する必要があります。 新しいインスタンスが作成される前にクライアントがサーバーにバインドしようとすると、バインド呼び出し RpcBindingFromStringBinding がエラー メッセージ RPC_S_SERVER_TOO_BUSYで失敗する可能性があります。 そのため、サーバーがビジー状態で接続を受け入れられない場合は、クライアント アプリケーションが処理するようにする必要があります。 クライアントは自動的に再試行するか、ユーザーに一貫したアクションを求めるか、正常に失敗します。

名前付きパイプ ポート文字列の構文は、すべてのポート文字列と同様に、トランスポート実装によって定義され、IDL 仕様とは無関係です。 MIDL コンパイラは、制限付き構文チェックを実行しますが、エンドポイントの指定が正しいことを保証しません。 エラーの一部のクラスは、コンパイル時ではなく実行時に報告される場合があります。

[
    uuid(12345678-4000-2006-0000-20000000001a), 
    version(1.1), 
    endpoint("ncacn_np:[\\pipe\\stove\\hat]") 
] 
interface iface1
{
    // Interface definition statements.
}

[
    uuid(87654321-4000-2006-0000-20000000001b), 
    version(1.1), 
    endpoint("ncacn_np:\\\\myotherserver[\\pipe\\corncob]") 
] 
interface iface2
{
    // Interface definition statements.
}

関連項目

エンドポイント

インターフェイス定義 (IDL) ファイル

ncacn_at_dsp

ncacn_dnet_nsp

ncacn_ip_tcp

ncacn_nb_ipx

ncacn_spx

ncacn_nb_nb

ncacn_nb_tcp

ncacn_vns_spp

ncalrpc

ncadg_ipx

ncadg_ip_udp

文字列バインド