サービスプロバイダの作成(.NET)
[
Front page
] [
New
|
List of pages
|
Search
|
Recent changes
|
Help
]
Start:
*メッセージ送信ツールの作成(.NET) [#g29217fd]
**ライブラリの取得 [#nac2be19]
以下のページの.NET DLLの項目にあるサービスライブラリSIGSe...
(VC++2010を使用する場合はSIGService_<version>_vc2010.zip)...
-[[サービスライブラリ]]
**設定 [#l0e06e82]
***プロジェクト新規作成 [#yd34b304]
VC++(2008)で新しいプロジェクトを作成します。ファイル→新規...
新しいプロジェクトのダイアログが立ち上がるとCLRのWindows...
***dll参照 [#wf35673c]
ソリューションエクスプローラの中のプロジェクトを右クリッ...
共通プロパティのFrameworkと参照を選択し、新しい参照の追加...
***ボタン追加 [#j41162f6]
ツールボックスからButtonを選択して適当にボタンを追加しま...
#ref(SendMessage1.jpg)
**イベントハンドラ [#d4786251]
ボタンをダブルクリックしてイベントハンドラの中に以下のコ...
#highlight(cpp){{
private: System::Void button1_Click(System::Object^ sen...
// サービス名を指定してサービスクラスのインスタンス...
sigverse::SIGService srv("MyService");
// サーバに接続します
srv.connect("hostname", 9001);
// エンティティ"man_000"にメッセージ"Hello"を送信し...
srv.sendMsg("man_000", "Hello");
// サーバから切断します
srv.disconnect();
}
}}
connectの引数で指定するホスト名とポート番号はSIGVerseサー...
//**ライブラリの設定 [#a9b796c7]
//SIGVerseサービスライブラリの設定を行います。
//+ソリューションエクスプローラのプロジェクト名を右クリッ...
//「構成プロパティ」→「C/C++」→「全般」を選択し、「追加の...
//+次に「構成プロパティ」→「リンカ」→「全般」を選択し、「...
(ReleaseモードでコンパイルするときはReleaseを選択します。...
//+最後に同じ「リンカ」の「入力」を選択し「追加の依存ファ...
ビルドが正常に行えるか確認してみてください。
**実行 [#zc55d270]
これで準備は整いました。
まずチュートリアルのサンプル[[人間型エージェントの操作]]...
サーバを起動したらビューワーからサーバに接続して"START"ボ...
ビューワーからではなくMyServiceからメッセージ"Hello"を送...
*プラグインの登録 [#b3215ae4]
次に作成したサービスをプラグインとしてビューワーに登録し...
サービスサンプルを以下のように修正します。
MyService.cpp
#highlight(cpp){{
private: System::Void button1_Click(System::Object^ sen...
// サービス名を指定してサービスクラスのインスタンス...
sigverse::SIGService srv("MyService");
// メイン関数の引数からホスト名とポート番号を取得し...
cli::array<System::String^>^ args = System::Environm...
// サーバに接続します
srv.connect(args[1], System::Convert::ToInt32(args[2...
// エンティティ"man_000"にメッセージ"Hello"を送信し...
srv.sendMsg("man_000", "Hello");
// サーバから切断します
srv.disconnect();
}
}}
SIGVerseサービスではサーバのホスト名とポート番号がメイン...
**コンパイル [#l94e75d8]
SIGViewerに読み込ませるようにするため、以下の設定をしてか...
-ソリューションエクスプローラのプロジェクト名を右クリック...
exeファイルを先に作って後から拡張子を.sigに変更しても同じ...
**ビューワーへ登録 [#v01acfa7]
ビルドが成功してDebug(もしくはRelease)フォルダにMyService...
+まずビューワーを立ち上げます。&br; &br;
+上にあるメニューバーから「Service」→「Add」を選択します...
+サービスリストが立ち上がったら"Add"ボタンを押して作成し...
#ref(サービスプロバイダの作成/MyService_1.PNG,80%)
+"OK"ボタンを押します。
#highlight(end)
**実行 [#qe5980a6]
先ほどと同様に[[人間型エージェントの操作]]の「コマンドに...
人間が手を下した状態になったら、メニューバーの「Service」...
エージェントがお辞儀をすれば成功です。
*Old version [#xc430bd6]
[[メッセージ送信ツールの作成(v120330, v1.4.8)]]
----
Up:[[Tutorial]] Previous:[[HMD+KINECT]] ...
End:
*メッセージ送信ツールの作成(.NET) [#g29217fd]
**ライブラリの取得 [#nac2be19]
以下のページの.NET DLLの項目にあるサービスライブラリSIGSe...
(VC++2010を使用する場合はSIGService_<version>_vc2010.zip)...
-[[サービスライブラリ]]
**設定 [#l0e06e82]
***プロジェクト新規作成 [#yd34b304]
VC++(2008)で新しいプロジェクトを作成します。ファイル→新規...
新しいプロジェクトのダイアログが立ち上がるとCLRのWindows...
***dll参照 [#wf35673c]
ソリューションエクスプローラの中のプロジェクトを右クリッ...
共通プロパティのFrameworkと参照を選択し、新しい参照の追加...
***ボタン追加 [#j41162f6]
ツールボックスからButtonを選択して適当にボタンを追加しま...
#ref(SendMessage1.jpg)
**イベントハンドラ [#d4786251]
ボタンをダブルクリックしてイベントハンドラの中に以下のコ...
#highlight(cpp){{
private: System::Void button1_Click(System::Object^ sen...
// サービス名を指定してサービスクラスのインスタンス...
sigverse::SIGService srv("MyService");
// サーバに接続します
srv.connect("hostname", 9001);
// エンティティ"man_000"にメッセージ"Hello"を送信し...
srv.sendMsg("man_000", "Hello");
// サーバから切断します
srv.disconnect();
}
}}
connectの引数で指定するホスト名とポート番号はSIGVerseサー...
//**ライブラリの設定 [#a9b796c7]
//SIGVerseサービスライブラリの設定を行います。
//+ソリューションエクスプローラのプロジェクト名を右クリッ...
//「構成プロパティ」→「C/C++」→「全般」を選択し、「追加の...
//+次に「構成プロパティ」→「リンカ」→「全般」を選択し、「...
(ReleaseモードでコンパイルするときはReleaseを選択します。...
//+最後に同じ「リンカ」の「入力」を選択し「追加の依存ファ...
ビルドが正常に行えるか確認してみてください。
**実行 [#zc55d270]
これで準備は整いました。
まずチュートリアルのサンプル[[人間型エージェントの操作]]...
サーバを起動したらビューワーからサーバに接続して"START"ボ...
ビューワーからではなくMyServiceからメッセージ"Hello"を送...
*プラグインの登録 [#b3215ae4]
次に作成したサービスをプラグインとしてビューワーに登録し...
サービスサンプルを以下のように修正します。
MyService.cpp
#highlight(cpp){{
private: System::Void button1_Click(System::Object^ sen...
// サービス名を指定してサービスクラスのインスタンス...
sigverse::SIGService srv("MyService");
// メイン関数の引数からホスト名とポート番号を取得し...
cli::array<System::String^>^ args = System::Environm...
// サーバに接続します
srv.connect(args[1], System::Convert::ToInt32(args[2...
// エンティティ"man_000"にメッセージ"Hello"を送信し...
srv.sendMsg("man_000", "Hello");
// サーバから切断します
srv.disconnect();
}
}}
SIGVerseサービスではサーバのホスト名とポート番号がメイン...
**コンパイル [#l94e75d8]
SIGViewerに読み込ませるようにするため、以下の設定をしてか...
-ソリューションエクスプローラのプロジェクト名を右クリック...
exeファイルを先に作って後から拡張子を.sigに変更しても同じ...
**ビューワーへ登録 [#v01acfa7]
ビルドが成功してDebug(もしくはRelease)フォルダにMyService...
+まずビューワーを立ち上げます。&br; &br;
+上にあるメニューバーから「Service」→「Add」を選択します...
+サービスリストが立ち上がったら"Add"ボタンを押して作成し...
#ref(サービスプロバイダの作成/MyService_1.PNG,80%)
+"OK"ボタンを押します。
#highlight(end)
**実行 [#qe5980a6]
先ほどと同様に[[人間型エージェントの操作]]の「コマンドに...
人間が手を下した状態になったら、メニューバーの「Service」...
エージェントがお辞儀をすれば成功です。
*Old version [#xc430bd6]
[[メッセージ送信ツールの作成(v120330, v1.4.8)]]
----
Up:[[Tutorial]] Previous:[[HMD+KINECT]] ...
Page: