QAnywhere を使用してメッセージを送信または受信する前に、次の初期化処理を実行する必要があります。
QAnywhere クライアント API を初期化するには、次の手順に従います (C++ の場合)。
QAnywhere ヘッダ・ファイルをインクルードします。
#include <qa.hpp>
qa.hpp には、QAnywhere のさまざまなクラスが定義されています。
QAnywhere を初期化します。
そのためには、QAManager オブジェクトを作成するためのファクトリを初期化します。
QAManagerFactory * factory;
factory = QAnywhereFactory_init();
if( factory == NULL ) {
// fatal error
}QAManager オブジェクトを作成します。
デフォルトの QAManager オブジェクトを作成するには、次のようにします。
QAManager * mgr;
// Create a manager
mgr = factory->createQAManager( NULL );
if( mgr == NULL ) {
// fatal error
}QAManager オブジェクトは、プログラムで、またはプロパティ・ファイルを使用してカスタマイズできます。
QAManager をプログラムでカスタマイズする場合は、setProperties メソッドを使用する。
詳細については、プログラムによるプロパティの設定を参照してください。
プロパティ・ファイルを使用する場合は、createQAManager メソッドの引数としてプロパティ・ファイルを指定する。
mgr = factory->createQAManager( "qa_mgr.props" );
qa_mgr.props は、リモート・デバイス上のプロパティ・ファイルの名前です。
詳細については、ファイルによるプロパティの設定を参照してください。
QAManager オブジェクトを初期化します。
qa_bool rc;
rc=mgr->open(
AcknowledgementMode::IMPLICIT_ACKNOWLEDGEMENT ) )open メソッドの引数には、メッセージの受信確認方法を示す受信確認モードを指定します。これは、IMPLICIT_ACKNOWLEDGEMENT または EXPLICIT_ACKNOWLEDGEMENT でなければなりません。前者は暗黙的な受信確認モードを意味します。このモードの場合、メッセージはクライアントで受信されるとすぐに受信確認されます。後者は明示的な受信確認モードを意味します。このモードの場合、QAManager の acknowledgement メソッドを呼び出してメッセージを受信確認する必要があります。
詳細については、QAManager クラスを参照してください。
Visual Studio .NET プロジェクトを使用するには、次の 2 つの変更を行う必要があります。
QAnywhere .NET DLL への参照を追加する。参照を追加すると、QAnywhere .NET API のコードを検索するためにインクルードする必要がある DLL を Visual Studio.NET に認識させることができます。
QAnywhere .NET API のクラスを参照する行をソース・コードに追加する。QAnywhere .NET API を使用するには、データ・プロバイダを参照する行もソース・コードに追加する必要があります。C# では、Visual Basic .NET 用とは異なる行を追加します。
これらの作業を行った上で、QAnywhere クライアント API を初期化してください。
Visual Studio .NET のプロジェクトに QAnywhere .NET API への参照を追加するには、次の手順に従います。
Visual Studio .NET を起動し、プロジェクトを開きます。
[ソリューション エクスプローラ] ウィンドウで、[参照設定] フォルダを右クリックし、ポップアップ・メニューから [参照の追加] を選択します。
[参照の追加] ダイアログが表示されます。
[.NET] タブで、[参照] をクリックして iAnywhere.QAnywhere.Client.dll を見つけます (デフォルト・ロケーションは、¥Program Files¥Sybase¥SQL Anywhere 9¥win32 です)。DLL を選択して [開く] をクリックします。
Windows と Windows CE にはそれぞれ異なるバージョンの DLL があるので注意してください。
DLL がプロジェクトに追加されているかどうかを確認できます。[参照の追加] ダイアログを開き、[.NET] タブをクリックします。[選択されたコンポーネント] リストに iAnywhere.QAnywhere.Client.dll が表示されます。[OK] をクリックしてダイアログを閉じます。
プロジェクトの [ソリューション エクスプローラ] ウィンドウの [参照設定] フォルダに DLL が追加されます。ソース・コードのデータ・プロバイダ・クラスを参照します。
コード内で QAnywhere .NET API のクラスを参照するには、次の手順に従います。
Visual Studio .NET を起動し、プロジェクトを開きます。
C# を使用している場合は、プロジェクトの先頭にある using ディレクティブのリストに次の行を追加します。
using iAnywhere.QAnywhere.Client;
Visual Basic .NET を使用している場合は、プロジェクトの先頭で行 Public Class Form1 の前に次の行を追加します。
Imports iAnywhere.QAnywhere.Client
この行は必須ではありません。しかし、この行を追加すると、QAnywhere クラスの省略形を使用できます。この行を追加しない場合は、次のように完全なクラス名を指定してください。
iAnywhere.QAnywhere.Client.QAManager mgr = new iAnywhere.QAnywhere.Client.QAManagerFactory.Instance.CreateQAManager( "qa_manager.props" );
一方、追加した場合には、次のようにクラス名を指定できます。
QAManager mgr = QAManagerFactory.Instance.CreateQAManager( "qa_manager.props" );
このコードではクラス名を省略形で指定しています。
QAnywhere クライアント API を初期化するには、次の手順に従います (.NET の場合)。
iAnywhere.QAnywhere.Client ネームスペースをインクルードします。
using iAnywhere.QAnywhere.Client;
QAManager オブジェクトを作成します。
デフォルトの QAManager オブジェクトを作成するには、次のようにします。
QAManager mgr; mgr = QAManagerFactory.Instance.CreateQAManager( null );
プロパティ・ファイルを使用して、カスタマイズされた QAManager オブジェクトを作成することもできます。次のように、CreateQAManager メソッドの引数としてプロパティ・ファイルを指定します。
mgr = QAManagerFactory.Instance.CreateQAManager( "qa_mgr.props" );
qa_mgr.props は、リモート・デバイス上に存在するプロパティ・ファイルの名前です。
QAManager オブジェクトを初期化します。
mgr.Open( AcknowledgementMode.EXPLICIT_ACKNOWLEDGEMENT);
open メソッドの引数には、メッセージの受信確認方法を示す受信確認モードを指定します。これは、IMPLICIT_ACKNOWLEDGEMENT または EXPLICIT_ACKNOWLEDGEMENT でなければなりません。前者は暗黙的な受信確認モードを意味します。このモードの場合、メッセージはクライアントで受信されるとすぐに受信確認されます。後者は明示的な受信確認モードを意味します。このモードの場合、QAManager の acknowledgement メソッドを呼び出してメッセージを受信確認する必要があります。
詳細については、QAManager クラスを参照してください。
これで、メッセージを送信する準備ができました。
SQL Anywhere Studio 9.0.2
Copyright © 1989–2005 Sybase, Inc. Portions copyright © 2001–2005 iAnywhere Solutions, Inc. All rights reserved.