次の方法で共有


COPY_TRACE_TO_FILE

COPY_TRACE_TO_FILE 動詞では、個々の API/リンク サービス トレース ファイルを連結して、1 つのファイルが形成されます。

次の構造体に、COPY_TRACE_TO_FILE 動詞で使用される Verb 制御ブロック (VCB) を示します。

構文


struct copy_trace_to_file {  
    unsigned short       opcode;  
    unsigned char        opext;  
    unsigned char        reserv2;  
    unsigned short       primary_rc;  
    unsigned long        secondary_rc;  
    unsigned char        reserv3[8];  
    unsigned char        file_name[64];  
    unsigned char        file_option;  
    unsigned char        reserv4[12];  
};   

メンバー

opcode
指定されたパラメーター。 操作コードを識別する動詞、SV_COPY_TRACE_TO_FILE。

opext
予約済みフィールド。

reserv2
予約済みフィールド。

primary_rc
返されたパラメーター。 動詞の完了時に APPC によって設定されるプライマリ リターン コードを指定します。 有効なリターン コードは、発行された APPC 動詞によって異なります。 この動詞の有効なエラーコードについては、「リターン コード」を参照してください。

secondary_rc
返されたパラメーター。 動詞の完了時に APPC によって設定されるセカンダリ リターン コードを指定します。 有効なリターン コードは、発行された APPC 動詞によって異なります。 この動詞の有効なエラーコードについては、「リターン コード」を参照してください。

reserv3
予約済みフィールド。

file_name
指定されたパラメーター。 トレース データのコピー先のファイルの名前を指定します。 このパラメーターは、64 バイトの文字列であり、パスを含めることができます。 名前が 64 バイト未満の場合は、スペースを使用して右側に埋め込みます。

file_option
指定されたパラメーター。 出力ファイル コピー オプションを指定します。

  • 指定したファイルがまだ存在していない場合にのみ、SV_NEW を使用してトレースをコピーします。

  • SV_OVERWRITE を使用して、既存のファイルにトレースをコピーし、現在のデータを上書きします。 必要に応じて、ファイルのサイズが増加されます。また、ファイルがまだ存在しない場合は作成されます。

reserv4
提供されたデータが存在するアドレス。

リターン コード

SV_OK
プライマリ リターン コード。動詞は正常に実行されました。

SV_PARAMETER_CHECK
プライマリ リターン コード。パラメーター エラーのため、動詞は実行されませんでした。

SV_INVALID_FILE_OPTION
セカンダリ リターン コード。file_option に SV_NEW または SV_OVERWRITE 以外の値が指定されました。

SV_STATE_CHECK
プライマリ リターン コード。動詞は無効な状態で発行されたため、実行されませんでした。

SV_COPY_TRACE_IN_PROGRESS
セカンダリ リターン コード。以前に発行された COPY_TRACE_TO_FILE 動詞がまだ進行中です。

SV_TRACE_FILE_EMPTY
セカンダリ リターン コード。トレース ファイルにデータがありません。

SV_TRACE_NOT_STOPPED
セカンダリ リターン コード。動詞の発行時にトレースが進行中でした。

SV_COMM_SUBSYSTEM_NOT_LOADED
プライマリ リターン コード。動詞の処理中に、必要なコンポーネントを読み込めなかったか、終了できませんでした。 そのため、通信を行うことができませんでした。 是正措置については、システム管理者に問い合わせてください。

SV_FILE_ALREADY_EXISTS
プライマリ リターン コード。SV_NEW file オプションを使用した場合、指定したファイル名が既存のファイルの名前でした。

SV_INVALID_VERB
プライマリ リターン コード。opcode パラメーターが、どの動詞の操作コードとも一致しませんでした。 動詞は実行されませんでした。

SV_INVALID_VERB_SEGMENT
プライマリ リターン コード。VCB がデータ セグメントの終わりを越えています。

SV_OUTPUT_DEVICE_FULL
プライマリ リターン コード。出力ファイルが存在するデバイスに十分な空き領域がありません。 追加のディスク領域を解放してから、操作を再試行してください。

SV_UNEXPECTED_DOS_ERROR
プライマリ リターン コード。次のいずれかの条件が発生しました。

  • Microsoft Windows システムで、動詞の処理中にエラーが発生しました。 オペレーティング システムのリターン コードが、セカンダリ リターン コード経由で返されました。 問題が解決しない場合は、システム管理者に是正措置について問い合わせてください。

  • より一般的な Windows PostMessage 関数呼び出しではなく、Windows SendMessage 関数呼び出しを発行している別のアプリケーションによって呼び出されたメッセージ ループから、CSV が発行されました。 動詞処理を行うことはできません。

  • SendMessage によってアプリケーションが呼び出されたときに CSV が発行されました。 アプリケーションが SendMessage で呼び出されているかどうかを確認するには、InSendMessage Windows API 関数呼び出しを使用します。

解説

2 つの API/リンク サービス トレース ファイルが あります。 ファイルは交互に使用されます。一方のファイルがいっぱいになる (250K を超える) と、他方のファイルにトレースが切り替わります。 COPY_TRACE_TO_FILE が呼び出されると、これらのトレース ファイルは連結されて 1 つのファイルにコピーされ、その名前が呼び出しのパラメーターとして指定されます。

API/リンク-サービスのトレースは、動詞を発行する前に停止し、コピーの完了後に再起動されます。 この動詞が正常に完了すると、トレース ファイルがリセットされます。