Hitachi

JP1 Version 12 JP1/Base 関数リファレンス


JevRegistEvent

〈このページの構成〉

機能

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を返す。

注意事項

拡張属性を指定するときに,同一の拡張属性名を持つ文字列を複数指定した場合は,最後に指定した文字列が有効になります。