====================================================================================================
== ソース・コード・ファイル (TDS/Sample2) ==========================================================

Sample1 で示した通常 API（TDSCommXxxx()）を使用したものを、簡易 API (TDSUDrvXxxx()）を使用したもの
とするサンプルを示す。
本サンプルでは、「装置側」を Active、「ホスト側」を Passive 接続としている。


■ TDSSample2.cpp

  ・ 本サンプルのアプリケーション・クラス定義



■ TDSSample2Dlg.cpp

  ・ 画面処理
  ・ 各ボタンに応じて、TDSSample2Proc.cpp の各関数を Call し、機能を実行する。
  ・ TDSSample2Proc.cpp 内の各関数は、本クラスが用意する表示領域へ、送信メッセージ、受信メッセージ
     等を表示する。



■ TDSSample2Proc.cpp

  ・ Sample0/CallbackIo.c 相当の処理を行う。
  ・ 受信処理、ステータスの変更処理は、Callback 関数により行う。
  ・ SML 形式メッセージ定義ファイル（Sample.sml）を使用して、送信メッセージの構築を行う。
  ・ 送受信メッセージの表示も、上記メッセージ定義ファイルを使用し、メッセージ名称、メッセージを構成
     する各項目名称等を表示する。
  ・ 受信１次メッセージに対する２次メッセージの応答は、メッセージ定義ファイルを使用した自動応答
     メッセージ作成機能により作成したものを応答する。



■ EditList.cpp

  ・ 送受信メッセージ表示領域の EditList に関する処理を行う。



■ Sample.ini

  ・ ../Sample0/Sample.ini をコピーして使用すること。
     内容は、../Sample0/Readme.txt を参照すること。



■ Sample.sml

  ・ ../Sample0/Sample.sml をコピーして使用すること。
     内容は、../Sample0/Readme.txt を参照すること。



====================================================================================================
== サンプル・プログラムの作成方法 ==================================================================

■ MS/VS2010 を使用し、TDSSample2.sln を起動することによる。

  ・ 実行形式は Release/TDSSample2.exe もしくは Debug/TDSSample2.exe として作成する。


  (注1) 本サンプルのプロジェクトは、VS2010 の 64bit プラットフォームでの使用を前提としている。
      従って Build の際は、[ソリューション・プラットフォーム] の指定を "x64" としてから Build を
      実行すること。

  (注2) 本サンプルは以下の開発環境に対応する。
       VS2012 以降を使用する場合は、VS のプロジェクト・ファイルの変換機能を用いて（あるいは自動変換
       で）使用する VS のバージョンに変換すること。）
    ・ Microsoft .. Visual Studio 2010      (c:\Program Files\Microsoft Visual Studio 10.0)
    ・ Microsoft .. Visual Studio 2012      (c:\Program Files\Microsoft Visual Studio 11.0)
    ・ Microsoft .. Visual Studio 2013      (c:\Program Files\Microsoft Visual Studio 12.0)
    ・ Microsoft .. Visual Studio 2015      (c:\Program Files\Microsoft Visual Studio 14.0)
    ・ Microsoft .. Visual Studio 2017      (c:\Program Files\Microsoft Visual Studio 14.1)
    ・ Microsoft .. Visual Studio 2019      (c:\Program Files\Microsoft Visual Studio 14.2)
    ・ Microsoft .. Visual Studio 2022      (c:\Program Files\Microsoft Visual Studio 14.4)

  (注3) 32bit AP とする場合は、[ソリューション・プラットフォーム] の指定を "Win32" とし、[追加の
      ライブラリディレクトリ] "../Win64" から "../Win32" に変更すること。
      また、[ビルド後イベント] の (注4) に示す TDSSample2.exe のコピー先を変更すること。

  (注4) Build 結果の TDSSample2.exe は ../Sample0/bin64/ に自動的にコピーする。
      ../Sample0/ にて "nmake -f Makefile.Win64" を実行すると、実行に必要な設定ファイル等を
      ../Sample0/bin64/ にコピーするので、../Sample0/bin64/ での実行環境が整う。



====================================================================================================
== サンプル・プログラムの起動方法、操作方法 ========================================================

■ 準備

  ・ カレント・ディレクトリに、以下を置。
    ・ Sample.ini
    ・ Sample.sml

  ・ 実行可能なパスに ../Win64 もしくは ../Win32 にある以下をコピーする。
    ・ TDS.dll


  (注1) 上記 "== サンプル・プログラムの作成方法 ==" の (注3)(注4) に示すように TDSSample2.exe は
      ../Sample0/bin64/ に自動的にコピーされ、Sample0/ での nmake の実行により実行環境が整備される
      ので、簡単に実行することができる。



■ 起動

  ・ Sample2.exe を２つ起動する。

  （注2) Sample2.exe 同士での通信を行う場合は２つ起動する。通信の相手は Sample1.exe でも
       CallbackIo.exe でも良い。もちろん、新たに作成した、対応するアプリケーションでも良い。



■ 操作

  ・ [開始／終了] 中の「装置側」もしくは「ホスト側」を選択して「処理開始」を押下する。
     _TDSUDrvOpen()、及び _TDSMDMssgInitialize() が Call され、SECS/HSMS 動作可能な状態となる。

  ・ 相手側との接続が完了すると、[接続] 表示となり、[送信処理] 中の各ボタンが押下可能となる。
     接続がとぎれると [非接続] 表示となる。

  ・ [送信処理] 内の各ボタン
    「S1F1 送信」「S1F21 送信」「S6F11 送信」（もしくは「S2F49 送信）は、単独でのメッセージ送信を
     行う。「任意メッセージ送信」は、下欄に入力した名称のメッセージをメッセージ定義ファイルから検索
     して送信する。
    「連続送信開始」は、所定送信間隔（TDSSample2Proc.cpp 内で定義する）で S6F11 もしくは S2F49 を
     連続して送信する。「連続送信終了」で停止する。
 

  (注3) 本サンプルは、その性格上（なるべくシンプルに TDS 使用方法ご理解いただくため）例外処理等に
      関しては十分ではありません。ご使用になる場合のコード化にあたっては、TDS ご利用環境、ご利用
      形態等に応じて、十分な例外処理等をコード化してください。

