機能
JP1/BaseのイベントサーバにJP1イベントを発行します。この関数が正常終了した時点で,自イベントサーバでのJP1イベントの受付が完了していることが保証されます。
定義ヘッダー
JevApi.h
形式
int JevRegistEvent(long* status ,
const char* server,
long baseID,
const char* message,
const char** extattrs,
int extcount);
引数
status
この関数の異常終了時の状態コードを返す領域のアドレスを指定します。状態コードとその意味は次のとおりです。
表3-29 状態コードと意味(JevRegistEvent)
状態コード | 意味 |
---|---|
JEV_NO_LIBRARY | ライブラリーが見つかりません※,またはファイルオープン数が限界に達しシェアードライブラリーが検索できません。 |
JEV_S_CONNECT_ERROR | イベントサービスに接続できません。 |
JEV_S_INVALID_ID | イベントIDが不正です。 |
JEV_S_INVALID_SERVER | イベントサーバ名が不正です。 |
JEV_S_INVALID_EXT_NAME | 拡張属性名が不正です。 |
JEV_S_OVER_EXT_COUNT | 拡張属性数が上限を超えています。 |
JEV_S_OVER_EXT_SIZE | 拡張属性の合計サイズが上限を超えています。 |
JEV_S_OVER_MESSAGE | メッセージの長さが上限を超えています。 |
JEV_S_PARAM_ERROR | パラメーターが不正です。 |
JEV_S_NOT_SUPPORT | サポートされていません。 |
JEV_S_MAXOPEN | ファイルオープン数の限界に達しました。 |
JEV_S_NOMEMORY | メモリー不足です。 |
JEV_S_IO_ERR | 入出力エラーです。 |
JEV_S_SYSTEM_ERROR | システムエラーです。 |
注※ 誤って必要なファイルを削除したか,またはコンパイルオプションに誤りがあるおそれがあります。必要なファイルを削除していた場合は,JP1/Baseを再インストールしてください。コンパイルオプションが誤っていた場合は,再設定してください。
server
自ホストで稼働する接続先イベントサーバ名を表す「¥0」で終わる文字列へのポインターを指定します。NULLポインターを指定すると,自ホスト名と同じ名称のイベントサーバに接続します。イベントサーバ名は,「¥0」を含めて256バイト以下で指定してください。
baseID
登録するイベントIDの基本部を表す数値を指定します。指定できる値の範囲は,0x00000000,0x00000001~0x00001FFF,または0x7FFF8000~0x7FFFFFFFです。
message
登録するメッセージを表す「¥0」で終わる文字列へのポインターを指定します。メッセージは,「¥0」を含めて1,024バイト以下で指定してください。
extattrs
登録する拡張属性文字列を格納した文字列配列を指定します。配列の中の個々の拡張属性文字列は,「拡張属性名=拡張属性値」の形式の,「¥0」で終わる文字列です。
拡張属性名は,属性の意味を表す文字列です。拡張属性名には,英数字またはアンダーライン(_)から成る最大32バイトの文字列を指定できます。英字は大文字だけを使用できます。文字列の先頭は英字で指定してください。
拡張属性値は,属性の内容を表す0~10,000バイトの文字列です。
拡張属性は,最大100個指定できます。すべての属性値の長さの合計(「¥0」を含まない)は,10,000バイトに制限されます。
引数としてNULLポインターを指定した場合,拡張属性は登録されません。
拡張属性の詳細については,「付録A JP1イベントの属性の設定基準」を参照してください。
extcount
登録する拡張属性の個数を指定します。「拡張属性」にNULLポインターが指定された場合,この値は無視されます。
戻り値
正常終了 | 0を返す。 |
異常終了 | -1を返す。 |
注意事項
拡張属性を指定するときに,同一の拡張属性名を持つ文字列を複数指定した場合は,最後に指定した文字列が有効になります。