다음을 통해 공유


DEFINE_TRACE

DEFINE_TRACE 동사는 지정된 API에 대해 추적을 사용하거나 사용하지 않도록 설정하고 추적 양을 제어합니다.

다음 구조에서는 DEFINE_TRACE 동사에서 사용하는 VCB(동사 제어 블록)를 설명합니다.

문법

  
struct define_trace {  
    unsigned short       opcode;  
    unsigned char        opext;  
    unsigned char        reserv2;  
    unsigned short       primary_rc;  
    unsigned long        secondary_rc;  
    unsigned char        reserv3[8];  
    unsigned char        dt_set;  
    unsigned char        appc;  
    unsigned char        reserv4;  
    unsigned char        srpi;  
    unsigned char        sdlc;  
    unsigned char        tkn_rng_dlc;  
    unsigned char        pcnet_dlc;  
    unsigned char        dft;  
    unsigned char        acdi;  
    unsigned char        reserv5;  
    unsigned char        ehllapi;  
    unsigned char        x25_api;  
    unsigned char        x25_dlc;  
    unsigned char        twinax;  
    unsigned char        reserv6;  
    unsigned char        lua_api;  
    unsigned char        etherand;  
    unsigned char        subsym;  
    unsigned char        reserv7[8];  
    unsigned char        reset_trc;  
    unsigned short       trunc;  
    unsigned short       strg_size;  
    unsigned char        reserv8;  
    unsigned char        phys_link[8];  
    unsigned char        reserv9[56];  
};   

구성원

opcode
제공된 매개 변수입니다. SV_DEFINE_TRACE 작업 코드를 식별하는 동사입니다.

opext
예약 필드입니다.

reserv2
예약 필드입니다.

primary_rc
반환된 매개 변수입니다. 동사가 완료될 때 APPC에서 설정한 기본 반환 코드를 지정합니다. 유효한 반환 코드는 발급된 APPC 동사에 따라 달라집니다. 이 동사에 대한 유효한 오류 코드는 반환 코드를 참조하세요.

secondary_rc
반환된 매개 변수입니다. 동사가 완료될 때 APPC에서 설정한 보조 반환 코드를 지정합니다. 유효한 반환 코드는 발급된 APPC 동사에 따라 달라집니다. 이 동사에 대한 유효한 오류 코드는 반환 코드를 참조하세요.

reserv3
예약 필드입니다.

dt_set
제공된 매개 변수입니다. 추적 상태를 설정합니다.

  • aPI와 관련된 매개 변수(예: appc 또는 comm_serv)가 SV_CHANGE 설정된 경우 SV_ON 사용하여 특정 API에 대한 추적을 사용하도록 설정합니다.
  • API와 관련된 매개 변수가 SV_CHANGE 설정된 경우 SV_OFF 사용하여 특정 API에 대한 추적을 사용하지 않도록 설정합니다.

appc
제공된 매개 변수입니다. APPC 추적이 필요한지 여부를 나타냅니다.

  • SV_CHANGE 사용하여 dt_set 매개 변수 에 따라 APPC에 대한 추적을 사용하거나 사용하지 않도록 설정합니다.
  • SV_IGNORE 사용하여 추적을 APPC의 현재 상태로 둡니다.

허용되는 값은 비트 0을 켜거나 끕니다. 비트 1~7은 예약되어 있습니다.

reserv4
예약 필드입니다.

srpi
제공된 매개 변수입니다. SRPI 추적이 필요한지 여부를 나타냅니다.

  • SV_CHANGE 사용하여 dt_set 매개 변수 에 따라 APPC에 대한 추적을 사용하거나 사용하지 않도록 설정합니다.
  • SV_IGNORE 사용하여 추적을 APPC의 현재 상태로 둡니다.

sdlc
예약 필드입니다.

tkn_rng_dlc
예약 필드입니다.

pcnet_dlc
예약 필드입니다.

dft
예약 필드입니다.

acdi
예약 필드입니다.

reserv5
예약 필드입니다.

comm_serv
제공된 매개 변수입니다. COMM_SERV_API 추적이 필요한지 여부를 나타냅니다.

  • SV_CHANGE 사용하여 dt_set 매개 변수 에 따라 APPC에 대한 추적을 사용하거나 사용하지 않도록 설정합니다.
  • SV_IGNORE 사용하여 추적을 APPC의 현재 상태로 둡니다.

엘라피 (ehllapi)
예약 필드입니다.

x25_api
예약 필드입니다.

x25_dlc
예약 필드입니다.

twinax
예약 필드입니다.

reserv6
예약 필드입니다.

lua_api
예약 필드입니다.

etherand
예약 필드입니다.

subsym
예약 필드입니다.

reserv7
예약 필드입니다.

reset_trc
제공된 매개 변수입니다. 추적 파일 포인터를 다시 설정해야 하는지 여부를 나타냅니다.

  • 추적 파일 포인터를 추적 파일의 시작 부분에 다시 설정하지 않려면 SV_NO 사용합니다. 이전 추적 레코드는 덮어쓰지 않습니다.
  • SV_YES 사용하여 추적 파일 포인터를 추적 파일의 시작 부분에 다시 설정합니다. 이전 추적 레코드는 덮어씁니다.

잘라내기
제공된 매개 변수입니다. 각 추적 레코드의 최대 바이트 수를 지정합니다. 초과 바이트는 잘립니다. 잘림하지 않으려면 이 값을 0으로 설정합니다.

strg_size
예약 필드입니다.

reserv8
예약 필드입니다.

phys_link
예약 필드입니다.

reserv9
예약 필드입니다.

반환 코드

SV_OK
기본 반환 코드; 동사가 성공적으로 실행되었습니다.

SV_PARAMETER_CHECK
기본 반환 코드; 매개 변수 오류로 인해 동사가 실행되지 않았습니다.

SV_INVALID_RESET_TRACE
보조 반환 코드; reset_trc 매개 변수에 잘못된 값이 포함되어 있습니다.

SV_INVALID_SET
보조 반환 코드; dt_set 매개 변수에 잘못된 값이 포함되어 있습니다.

SV_STATE_CHECK
기본 반환 코드; 동사가 잘못된 상태에서 실행되었기 때문에 실행되지 않았습니다.

SV_COPY_TRACE_IN_PROGRESS
보조 반환 코드; 이전에 발급된 COPY_TRACE_TO_FILE 아직 진행 중입니다. DEFINE_TRACE 사용하는 동안에는 추적을 활성화할 수 없습니다.

SV_COMM_SUBSYSTEM_NOT_LOADED
기본 반환 코드; 동사를 처리하는 동안 필요한 구성 요소를 로드하거나 종료할 수 없습니다. 따라서 통신을 할 수 없습니다. 정정 작업은 시스템 관리자에게 문의하세요.

SV_INVALID_VERB
기본 반환 코드; opcode 매개 변수가 동사의 작업 코드와 일치하지 않습니다. 동사가 실행되지 않았습니다.

SV_INVALID_VERB_SEGMENT
기본 반환 코드; VCB는 데이터 세그먼트의 끝을 넘어 확장되었습니다.

SV_UNEXPECTED_DOS_ERROR
기본 반환 코드; 다음 조건 중 하나가 발생했습니다.

  • Microsoft® Windows® 시스템에서 동사를 처리하는 동안 오류가 발생했습니다. 운영 체제 반환 코드는 보조 반환 코드를 통해 반환되었습니다. 문제가 지속되면 시스템 관리자에게 문의하여 수정 작업을 수행합니다.
  • CSV는 일반적인 Windows PostMessage 함수 호출이 아닌 Windows SendMessage 함수 호출을 실행하는 다른 애플리케이션에서 호출한 메시지 루프에서 발급되었습니다. 동사 처리는 수행할 수 없습니다.
  • SendMessage가 애플리케이션을 호출할 때 CSV가 발급되었습니다. InSendMessage Windows API 함수 호출을 사용하여 애플리케이션이 SendMessage로 호출되었는지 여부를 확인할 수 있습니다.

비고

추적을 실행하고 사용하는 방법에 대한 자세한 내용은 제품에 대한 적절한 설명서를 참조하세요.