ATF Target Manager Sample_j - kaisu1986/ATF GitHub Wiki
TargetManager は、ターゲットを検出、追加、構成、および選択するための TargetEnumerationService の使用方法を示すサンプルです。 ターゲットは、TCP/IP アドレス、PS3™ 開発ツール (追加予定)、または PlayStation®Vita 開発ツールなどのネットワークエンドポイントです。 TargetEnumerationService は、ターゲットのクエリと列挙を実行するために ITargetConsumer インタフェースをサポートする、MEF プラグインとして実装され、 アプリケーションによって作成されたターゲットプロバイダを消費します。
このサンプルの内容は、Target Manager Programming Discussion を参照してください。
- MEF (Managed Extensibility Framework) を使用して、アプリケーションをまとめる。
- CommandService、SettingsService、および ControlHostService を含むアプリケーションシェルフレームワークの使用。
- TcpIpTargetProvider および Deci4pTargetProvider を使用して、TCP/IP および Deci4p ターゲットプロバイダを追加、表示、編集する。 各ターゲットプロバイダは、それぞれの特定のタイプのターゲットとパラメータを検出および報告する必要があります。 各ターゲットプロバイダは、ITargetProvider インタフェースをサポートする MEF プラグインとして実装されます。
- TargetEnumerationService を使用して利用可能なターゲットプロバイダを列挙する。 TargetEnumerationService は、異なるターゲットすべての情報をリストにまとめて、表示および編集できるようにします。 現在は Deci4p と TCP/IP のタイプのターゲットをサポートしていますが、将来他のターゲットタイプも容易にサポートできるように設計されています。
- ATF\Samples\TargetManager\bin\Release にある TargetManager.exe をダブルクリックします。
- ダイアログが表示され、すべてのターゲットがリスト表示されます。

- [File] (ファイル): [Exit] (終了) をクリックすると、TargetManager が終了します。
- [Edit] (編集)
- [Keyboard] (キーボードショートカット): [Customize] ウィンドウを使用して、キーボードショートカットを設定します。
- [Load]: このウィンドウを使用して、現在の TargetManager の設定を保存するか、またはファイルからアプリケーション設定を読み込みます。
- [Preferences] (設定): コマンドアイコンのサイズなど、アプリケーションを設定します。
- [Window] (ウィンドウ):
- [Tile] (左右に並べて表示): ATF によって自動的に追加されていますが、このサンプルでは何もしません。
- [Tile] (上下に並べて表示): ATF によって自動的に追加されていますが、このサンプルでは何もしません。
- [Tile] (重ねて表示): ATF によって自動的に追加されていますが、このサンプルでは何もしません。
- [Targets]: チェックボックスをオンにすると、[Targets] リストコントロールが表示されます。
- [Help] (ヘルプ):
- [About] (バージョン情報): バージョン情報ダイアログを表示します。
ダイアログの下に表示されている [Add] ボタンをクリックして、そのボタンのタイプのターゲットを追加します。 利用できるボタンはコンピュータの構成によって異なりますが、TCP/IP ターゲットは常に追加できます。 追加した後は、各接続の [Endpoint] と [Scope] のアイテムを編集できます。
モジュールには次のような機能があります。
- Program.cs: Main プログラムを含みます。 MEF を使用してインスタンス化された、使用されている ATF クラスをリストした TypeCatalog を作成します。 TcpIpTargetProvider およびDeci4pTargetProvider とともにTargetEnumerationService を使用するので、他のモジュールは必要ありません。