Windowsシステムでのワークステーションの使用
次の項では、Windows XPまたはWindows Server 2003システムにおけるOracle Tuxedo ATMIワークステーション・コンポーネントの使用に関する追加情報を示します。
Windowsシステムでワークステーションを使用する利点
Windows用にインスタンス化されたワークステーション・クライアントを使用すると、アプリケーション開発者は、次のような利点を活用できます。
•
|
実行可能テキストをアプリケーション間で共有できるため、メモリーを節約できます。
|
•
|
アプリケーション・プログラムの実行可能ファイルに再リンクしたり、このファイルを変更せずに、Oracle Tuxedoのワークステーションをアップグレードできます。
|
•
|
ダイナミック・リンクにより、インタプリタ形式でグラフィカルなアプリケーション生成ツール(Visual Basic、ObjectVision、およびSQLWindows)を使用して、Oracle Tuxedoシステムのサービスを呼び出すことができます。
|
Windowsシステムでワークステーション・コンポーネントを実行するためのソフトウェア要件は、次のとおりです。
•
|
使用できるオペレーティング・システムは、Windows XPまたはWindows Server 2003です。
|
•
|
TCP/IPを使用する場合は、Windowsソケット準拠の任意のTCP/IPスタックを使用できます。
|
•
|
サーバー・マシンには、Oracle Tuxedoシステムおよびネイティブ・サイドのOracle Tuxedoワークステーションがインストールされていなければなりません。
|
Windowsワークステーション用のクライアント・プログラムは、Oracle Tuxedoシステムの管理ドメイン内のネイティブなクライアント・プログラムと同じ方法で開発できます。ATMI関数はすべて使用できます。
ワークステーション・クライアントの相互運用性に関する制約
Oracle Tuxedoリリース7.1以降のワークステーション・クライアントは、次のいずれかの場合に、リリース7.1より前のOracle Tuxedoシステム・アプリケーションと相互運用します。
•
|
マルチスレッド化またはマルチコンテキスト化されたクライアントではありません。
|
•
|
クライアントがマルチスレッド化されており、各スレッドが異なるコンテキストにあります。
|
Oracle Tuxedoリリース7.1以降のワークステーション・クライアントで、1つのコンテキストに複数のスレッドがある場合は、リリース7.1より前のOracle Tuxedoシステムとは相互運用しません。
C言語を使用して記述されたクライアント・プログラムをコンパイルする場合は、MicrosoftのCインポート・ライブラリを読み取れるコンパイラであれば、どんなコンパイラでも使用できます。ATMI関数を呼び出すCOBOLソース・プログラムをコンパイルする場合は、COBOLコンパイラの
LITLINKオプションを使用します。詳細は、
『Oracle Tuxedo COBOLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』の
ワークステーション・コンポーネントに対するCOBOL言語のバインドに関する項を参照してください。
buildclient(1)ユーティリティを使わずにOracle Tuxedoクライアントを作成することもできます。Microsoft Visual C++プロジェクトを使用している場合は、次のように設定してください。
•
|
プリプロセッサ・オプションを -DWIN32に設定します。
|
•
|
リンカー・オプションの入力ライブラリに WTUXWS32.LIB MSVCRT.LIBを追加します。
|
また、適切な
INCLUDE、
LIB、および
PATH検索ディレクトリを設定してください。
sample/
atmi/wsディレクトリには、GUI atmiクライアントを作成するために、Windowsプラットフォーム用の複数の異なる
.makファイルが含まれています。これらのファイルの使用例については、
『Oracle Tuxedo ATMIアプリケーション開発のためのチュートリアル』の
bankapp (完全なC言語アプリケーション)のチュートリアルに関する項を参照してください。
クライアント・プログラムを実行する場合は、
PATHに
TUXDIR%¥binが含まれていなければなりません。
Oracle Tuxedoリリース7.1より前のOracle Tuxedoライブラリ(DLL)は、スレッド・セーフではありません。リリース7.1以前のDLLを使用して作成したアプリケーションでは、スレッドを使用しないでください。スレッドを使用すると、Oracle Tuxedoのすべての呼出し(ATMI、FML、
userlog()など)で、スレッド・アクセスがシリアライズされます。
•
|
『Oracle Tuxedo C言語を使用したOracle Tuxedo ATMIアプリケーションのプログラミング』または 『Oracle Tuxedo COBOLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』の クライアントのコーディングに関する項
|
•
|
『Oracle Tuxedo COBOLを使用したOracle Tuxedo ATMIアプリケーションのプログラミング』の ワークステーション・コンポーネントに対するCOBOL言語のバインドに関する項
|
•
|
『CORBAアプリケーションにおけるセキュリティの使用』の ATMIアプリケーションにクライアント・プログラムを参加させるためのセキュリティ・コードの記述方法に関する項
|
マルチスレッド化またはマルチコンテキスト化されたワークステーション・クライアントをアプリケーションに参加させる
Oracle Tuxedoアプリケーションに参加するため、マルチスレッド化されたワークステーション・クライアントは、シングル・コンテキスト・モードで実行していても、
TPMULTICONTEXTSフラグ・セットを指定した
tpinit(3c)を常に呼び出す必要があります。