ホスト アプリケーションの構築
「方法 : リモート処理が可能な型を構築する」で定義された RemotableType
クラスは、それだけでは特殊ではありません。他のアプリケーション ドメインのオブジェクトがこのオブジェクトのインスタンスをリモートから作成できるようにするには、次の 2 つのことを行うホスト アプリケーション (リスナ アプリケーションともいいます) を構築する必要があります。
チャネルを選択し、登録します。チャネルは、開発者の代わりにネットワーク プロトコルとシリアル化形式を処理するオブジェクトです。
作成した型を .NET リモート処理システムに登録し、チャネルを使用してその型への要求をリッスンできるようにします。
.NET Framework には、2 つの既定のチャネルとして HttpChannel (SOAP 形式を使用) と TcpChannel (バイナリ形式を使用) があります。簡単に使用できるのは、HttpChannel です。シナリオによっては、ポートを開かずにファイアウォール経由でこのチャネルを使用でき、標準セキュリティと認証プロトコルもサポートされているためです。シナリオに適したチャネルの選択方法の詳細については、「チャネル」を参照してください。
リスナ アプリケーションは、任意の種類のアプリケーション ドメインを使用して構築できます。Windows フォーム アプリケーション、ASP.NET Web アプリケーション、コンソール アプリケーション、Windows サービス (Windows NT サービスともいいます) などのマネージ アプリケーション ドメインを使用できます。リモート構成はアプリケーション ドメイン単位で行われるため、要求をリッスンするにはアプリケーション ドメインを実行している必要があります。
![]() |
---|
COM とは異なり、リモート処理はホスト アプリケーションまたはサーバー アプリケーションを自動的には起動しません。これは、.NET リモート処理と COM でのリモート アクティベーションとの重要な違いです。 |
構成は、プログラムによって実行することも、アプリケーションまたはコンピュータの構成ファイルを使用して行うこともできます。
リモート処理システムはこのファイルの情報を使用して、リモート処理が可能な型のインスタンスへの要求をリッスンし、転送します。このファイルでは、シングルトン サーバー アクティベーション モード、型名、リッスンする型のアセンブリ、およびオブジェクト URI (Uniform Resource Identifier) またはオブジェクトの外部名を指定します。オブジェクトの URI とリモート処理の詳細については、「アクティベーション URL」を参照してください。また、このファイルは、リモート処理システムに、システムによって提供された HttpChannel を使用してポート 8989 での要求をリッスンするように指定します。
![]() |
---|
上記の構成ファイルには設定が少ししかありませんが、.NET リモート処理で発生するほとんどの問題は、これらの設定の一部が正しくないか、クライアント アプリケーションの構成設定に一致していないことが原因で発生します。名前の入力を間違える、ポートの指定を忘れる、属性を無視するなどの問題がよくあります。リモート処理アプリケーションで問題が発生した場合は、最初に構成設定をチェックしてください。 |
参照
処理手順
関連項目
リモート処理設定スキーマ
WellKnownObjectMode.Singleton
概念
リモート アプリケーションの構成
サーバー アクティベーション