다음을 통해 공유


COPY_TRACE_TO_FILE

COPY_TRACE_TO_FILE 동사는 개별 API/링크 서비스 추적 파일을 연결하여 단일 파일을 형성합니다.

다음 구조에서는 COPY_TRACE_TO_FILE 동사에서 사용하는 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
보조 반환 코드; SV_NEW 또는 SV_OVERWRITE 이외의 값이 file_option 지정되었습니다.

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 파일 옵션을 사용할 때 지정한 파일 이름은 기존 파일의 이름입니다.

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

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

SV_OUTPUT_DEVICE_FULL
기본 반환 코드; 출력 파일이 있는 디바이스에 공간이 부족합니다. 추가 디스크 공간을 확보한 후 작업을 다시 시도합니다.

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

  • Microsoft Windows 시스템에서 동사를 처리하는 동안 오류가 발생했습니다. 운영 체제 반환 코드는 보조 반환 코드를 통해 반환되었습니다. 문제가 지속되면 시스템 관리자에게 문의하여 수정 작업을 수행합니다.

  • CSV는 일반적인 Windows PostMessage 함수 호출이 아닌 Windows SendMessage 함수 호출을 실행하는 다른 애플리케이션에서 호출한 메시지 루프에서 발급되었습니다. 동사 처리는 수행할 수 없습니다.

  • SendMessage가 애플리케이션을 호출할 때 CSV가 발급되었습니다. InSendMessage Windows API 함수 호출을 사용하여 애플리케이션이 SendMessage로 호출되었는지 여부를 확인할 수 있습니다.

비고

두 개의 API/link-service 추적 파일이 있습니다. 파일은 번갈아 사용됩니다. 추적은 한 파일이 꽉 찼을 때(250K보다 크면) 한 파일에서 다른 파일로 전환됩니다. COPY_TRACE_TO_FILE 호출되면 이러한 추적 파일이 연결되고 단일 파일에 복사되며, 그 이름은 호출에 대한 매개 변수로 지정됩니다.

API/link-service 추적은 동사를 발급하기 전에 중지되고 복사가 완료된 후 다시 시작됩니다. 이 동사가 성공적으로 완료되면 추적 파일이 다시 설정됩니다.