Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » Mobile Link - サーバ起動同期 » Palm デバイス用 Mobile Link Listener C API

 

PalmLsnProcess メソッド

設定データベース内のレコードに従ってメッセージを処理します。

構文
palm_lsn_ret PalmLsnProcess(
    struct a_palm_msg * msg,
    Char const * configPDBName,
    UInt16 * const problematicRecNum,
    Boolean * handled
)
パラメータ
  • msg   a_palm_msg インスタンスへのポインタ。

  • configPDBName   設定データベースの名前を保持する文字配列。設定データベース名は、PalmLsnGetConfigFileName メソッドを使用して取得します。PalmLsnGetConfigFileName メソッドを参照してください。

  • problematicRecNum   設定データベース内の問題のあるレコードや間違った形式のレコードのインデックスを特定する出力パラメータ。

  • handled   PalmLsnProcess が正常にメッセージを処理したかどうかを示す出力パラメータ。

戻り値

palm_lsn_ret 列挙体に定義されているリターン・コード。palm_lsn_ret 列挙体を参照してください。

備考

PalmLsnProcess は、着信メッセージに対して実行すべき適切なアクションを決定します。メッセージの各フィールドを、設定データベース内に格納されているフィルタと比較します。

Listener 設定データベースの作成方法の詳細については、Palm デバイス用の Listener 設定ユーティリティを参照してください。

設定データベース内のレコードには、メッセージ・フィルタに関する情報と受け入れたメッセージに対して実行されるアクションが格納されています。

設定レコードの形式は次のとおりです。

[subject=<string>;] [content=<string>;]
[message|message_start=<string>;] [sender=<string>;]
action=run <app name> [arguments]

arguments はアプリケーションによって異なる文字列で、action 変数を含めることができます。

参照

以下に、メッセージを処理するコードの一部を示します。この例では、メッセージ構造体を割り当て、フィールドを初期化し、PalmLsnProcess を使用してメッセージを処理しています。

a_palm_msg * ulMsg;
Boolean * handled 
Char configDb[dmDBNameLength];
...

// Allocate the message structure
ulMsg = PalmLsnAllocate();
...

// Fill the message fields
ret = PalmLsnDupMessage(ulMsg, msgBody);
...

// Get the configuration database name
PalmLsnGetConfigFileName(configDb);

// Process the message
ret = PalmLsnProcess(ulMsg, configDb, NULL, handled);
...

// Free the message
PalmLsnFree(ulMsg);