Systemwalker Centric Manager API・スクリプトガイド - UNIX/Windows(R)共通 -
目次 索引 前ページ次ページ

第2部 API> 第3章 APIの機能概要> 3.1 システム監視のAPI

3.1.4 リモートコマンドの出口情報(コンソール操作制御連携)

リモートコマンドの出口(DLL)をあらかじめ用意することで、以下の項目をカスタマイズすることができます。

作成したDLLは、DLL名を“mprcmdex.dll”とし、リモートコマンドを実際に発行する運用管理クライアントのパスの通った任意のディレクトリに格納してください。

リモートコマンドの出口情報には以下の2つの関数があります。コンソール操作制御運用時の動作が異なります。

なお、コンソール操作制御運用時、コマンドラインのチェック対象は[リモートコマンド]画面の実行コマンドに入力されたコマンドです。

■呼び出し形式

    
__declspec(dllexport) int __stdcall ChkRcmd2(
char *lpCommand,
int iHostCount,
char **lpHostname,
char **lpRuntype,
struct MP_CHKRCMD *mp_chkrcmd_ptr,
int iReserv,
struct stRcmdData *returnData)

■パラメタ

char *lpCommand
リモートコマンド画面で入力された入力文字列
int iHostCount
リモートコマンド発行先ホスト数(注1)
char **lpHostname
リモートコマンド発行先ホスト名
char **lpRuntype
リモートコマンド発行先ホストの運用形態名
struct MP_CHKRCMD *mp_chkrcmd_ptr
リモートコマンドを発行したユーザ名
int iReserv
予約域(注2)
struct stRcmdData *returnData
実行情報(リモートコマンドを実行できる場合に実行情報を設定してください。) (注3)

注1) リモートコマンド発行先ホスト名とリモートコマンド発行先ホストの運用形態名の数は同じになります。運用形態名のないホストの場合、対応する運用形態名の値にはNULLが設定されています。

注2) 予約域は参照、代入を行わないでください。

注3) 引数の実行情報には、リモートコマンドを実行できる場合に実行情報を設定してください。実行情報は呼び出し元で領域を確保しますので領域取得、開放処理を行わないでください。

また、コマンド文字列、およびメッセージ文字列サイズは以下が設定されます。

■構造体の説明

    
struct MP_CHKRCMD{
    char Sw_user[40];     // Systemwalkerコンソールのログインユーザ名
                          // (参照のみ)
    char SW_con_user[70]  // コンソール操作制御の認証によって入力され
                          // たユーザ名(参照のみ)
    void *rsv;            // 予約域(参照、代入を行わないでください)
    int  *rsv2;           // 予約域(参照、代入を行わないでください)
};
     
struct stRcmdData{
     int iCommandLength;  //コマンド文字列(lpCommand)の領域サイズ(参照のみ)
     char *lpCommand;     //実行するコマンド文字列
     int iConfMsgflag;    //確認ダイアログを表示有無 1:表示する 0:表示しない
     int iReservLength;   //メッセージ(lpReserv)の領域サイズ(参照のみ)
     char *lpReserv;      //コマンド実行否の場合のメッセージ文字列
     int iReserv;         //予約域
};

以下のパラメタ/構造体を編集すれば、カスタマイズすることができます。

int iCommandLength
コマンド文字列(lpCommand)の領域サイズ(参照のみ)
char *lpCommand
実際に発行するコマンド文字列
これを編集することで“実際に発行するコマンド文字列”をカスタマイズすることができます。
int iConfMsgflag
確認メッセージの表示の是非
以下の値を設定することで確認メッセージの表示を制御できます。
0: 確認メッセージを表示しない。
1: 確認メッセージを表示する。
int iReservLength
メッセージ(lpReserv)の領域サイズ(参照のみ)
char *lpReserv
コマンド実行しない場合のメッセージ文字列
これに文字列を指定すると、リモートコマンド実行時にコマンド実行の可否の確認メッセージが表示されます。
文字列を指定しないと確認メッセージは表示されません。
int iReserv
予約域
代入しないでください。

■復帰値

リモートコマンド発行の可否を、関数の復帰値により通知してください。

0:
リモートコマンドを実行する。
0以外:
リモートコマンドを実行しない。

■実行に必要な権限/実行環境

【Windows版】

【UNIX版】

◆コンパイル環境

コンパイル環境は以下のとおりです。

【Windowsの場合】

■注意事項

■使用例

ヘッダファイルの使用例を以下に示します。

// File Name: mprcmdex.h
// Function :RemoteCommand
//コマンドチェック用の復帰値構造体
struct stRcmdData{
int iCommandLength; //コマンド文字列(lpCommand)の領域サイズ(参照のみ)
char *lpCommand; //コマンド文字列
int iConfMsgflag; //確認ダイアログを表示有無 1:表示する 0:表示しない
int iReservLength; //予約域(lpReserv)の領域サイズ(参照のみ)
char *lpReserv; //予約域
int iReserv; //予約域
};
struct MP_CHKRCMD{
char Sw_user[40]; // Systemwalkerコンソールのログインユーザ名
// (参照のみ)
char SW_con_user[70] // コンソール操作制御の認証によって入力され
// たユーザ名(参照のみ)
void *rsv; // 予約域(参照、代入を行わないでください)
int *rsv2; // 予約域(参照、代入を行わないでください)
};

__declspec(dllexport) int __stdcall ChkRcmd2(char *,int,char **, char **, struct MP_CHKRCMD *, int,struct stRcmdData *);



目次 索引 前ページ次ページ

Copyright FUJITSU LIMITED 1995-2008