<channel> 要素 (インスタンス)
アプリケーションがリモート オブジェクトと通信するために使用するチャネルを構成します。チャネル テンプレートではない新しいチャネルを宣言および構成することもできます。
<configuration>
<system.runtime.remoting> 要素
<application> 要素
<channels> 要素 (インスタンス)
<channel> 要素 (インスタンス)
<!-- Either reference a channel template -->
<channel
ref="channelRef"
displayName="name"
port="port"
/>
<!-- Or declare a particular channel instance -->
<channel
type="ChannelType, ChannelAssembly"
displayName="name"
port="port"
customChannelProperty="propertyValue"
/>
属性および要素
以降のセクションでは、属性、子要素、および親要素について説明します。
属性
属性 | 説明 |
---|---|
ref |
省略可能属性 クライアントが使用するために登録するチャネル テンプレートの id を示します。ref 属性を指定する場合は、type 属性を指定する必要はありません。 .NET Framework リモート処理には、"http"、"tcp"、および "ipc" という 3 つのチャンネル実装が用意されています。チャネル実装を選択する方法の詳細については、「チャネルの選択」を参照してください。 |
displayName |
省略可能属性 このアプリケーションに登録されているチャネルのリストを作成するために、.NET Framework 構成ツールによって使用されます。この属性は、.NET Framework リモート処理システムによっては使用されません。 |
type |
省略可能属性 チャネルの完全型名と、チャネルの実装があるアセンブリの名前を示します。格納しているアセンブリがグローバル アセンブリ キャッシュ内にある場合は、バージョン、カルチャ、および公開キーの情報がすべて含まれます。この属性は、ref 属性を指定しない場合に指定する必要があります。 .NET Framework リモート処理には、"http"、"tcp"、および "ipc" という 3 つのチャンネル実装が用意されています。チャネル実装を選択する方法の詳細については、「 チャネルの選択」を参照してください。 |
port |
省略可能属性 適切なポート属性を示します。たとえば、チャネルがポートで待機するように指定するときは、ここでポート属性を指定できます。TcpChannel などの一部のチャネルでは、ポート指定は必須です。その他の HttpChannel などのチャネルの場合は、既定のポートがあるため、この属性の指定は必須ではありません。クライアントの構築時にポートとして 0 (ゼロ) を指定すると、.NET Framework リモート処理システムによって適切なポートが選択されます。クライアント チャネル用のポートを指定しない場合、クライアントがリモート オブジェクトからのコールバック関数を受け取ることができなくなります。 |
portName |
IpcChannel または IpcServerChannel の必須属性。サーバーが公開するポートの名前を指定します。 |
<customChannelProperty> |
省略可能属性 サポートされているカスタム チャネル プロパティを示します。チャネルがサポートするチャネル プロパティをいくつでも指定できます。カスタム チャネル プロパティは、属性と値のペアで指定します。次に例を示します。
|
useIpAddress |
公開する URL で、コンピュータ名の代わりに IP アドレスを使用するかどうかを指定する Boolean 値 (true または false) 。たとえばワイヤレス ネットワークでは、ネットワーク内を移動するポータブル コンピュータの IP アドレスがシャッフルされる場合があります。この値に false を指定すると、IP アドレスの代わりにコンピュータ名を使用するため、リモート接続がローミング中に切断されなくなります。既定値は true です。この値は、プロパティがサーバー チャネルで使用されるとき、machineName プロパティによってオーバーライドできます。 |
machineName |
現在のチャネルで使用されるコンピュータの名前を指定する文字列。サーバー チャネルで使用されている場合、useIpAddress をオーバーライドします。 注 一般的には、コンピュータの ドメイン ネーム システム (DNS) 名を使用することが望ましいですが、特定のネットワーク インターフェイス カード (通常はワイヤレス NIC) の IP アドレスが頻繁に変更される場合は、machineName を使用して、リモート処理が DNS 経由でコンピュータを見つけられるようにアプリケーションを構成する必要があります。しかし、コンピュータ名解決に時間がかかりすぎたり解決できなかったりする場合、コンピュータが物理的または仮想的に複数の NIC を持つときは (たとえば、ダイヤルアップ接続や VPN ネットワーク アダプタの場合)、現在接続に使用されている NIC の IP アドレスを machineName プロパティに設定する必要があります。 |
子要素
要素 | 説明 |
---|---|
サーバー側のチャネル シンク呼び出しチェーンに挿入されるシンクのシンク プロバイダを指定します。プロバイダが指定されている場合は、それらのプロバイダによって、チャネルの既定値が完全にオーバーライドされます。<channel> 要素内に 1 回だけ指定できます。 |
|
クライアント側のチャネル シンク呼び出しチェーンに挿入されるシンクのシンク プロバイダを指定します。プロバイダが指定されている場合は、それらのプロバイダによって、チャネルの既定値が完全にオーバーライドされます。<channel> 要素内に 1 回だけ指定できます。 |
親要素
要素 | 説明 |
---|---|
application |
アプリケーションが使用および公開するリモート オブジェクトに関する情報を指定します。 |
channels |
アプリケーションがリモート オブジェクトと通信するために使用するチャネルを指定します。この要素では、指定したアプリケーションで使用できるように、チャネル テンプレートを構成するか、新しいチャネルを宣言します。 |
configuration |
共通言語ランタイムおよび .NET Framework アプリケーションで使用されるすべての構成ファイルのルート要素です。 |
system.runtime.remoting |
リモート オブジェクトおよびチャネルに関する情報を指定します。 |
解説
システムによって提供される HttpChannel、TcpChannel、および IpcChannel は、マシン構成ファイルに指定されています。これらの id 属性は、それぞれ "http"、"tcp"、および "ipc" です。
例
次の構成ファイルは、クライアント アプリケーションに対してリモート型の場所を宣言しています。また <channels> インスタンス要素を使用することにより、サーバー オブジェクトへの接続に適したポートの検索や、既定の HttpChannel の使用を、.NET Framework リモート処理システムに対して指示しています。
<configuration>
<system.runtime.remoting>
<application>
<client>
<wellknown
type="RemoteType, RemoteAssembly"
url="http://computername:8080/RemoteType.rem"
/>
</client>
<channels>
<channel
ref="http"
port="0"
/>
</channels>
</application>
</system.runtime.remoting>
</configuration>
関連項目
参照
リモート処理設定スキーマ
HttpChannel
HttpClientChannel
HttpServerChannel
TcpChannel
TcpClientChannel
TcpServerChannel
IpcChannel
IpcClientChannel
IpcServerChannel
Copyright © 2007 by Microsoft Corporation.All rights reserved.