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
辅助返回代码;为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文件选项时,指定的文件名是现有文件的名称。
SV_INVALID_VERB
主要返回代码; opcode 参数与任何谓词的作代码不匹配。 未执行谓词。
SV_INVALID_VERB_SEGMENT
主要返回代码;VCB 超出了数据段的末尾。
SV_OUTPUT_DEVICE_FULL
主要返回代码;输出文件所在的设备上没有足够的空间。 释放其他磁盘空间后重试该作。
SV_UNEXPECTED_DOS_ERROR
主要返回代码;出现以下情况之一:
Microsoft Windows 系统处理谓词时遇到错误。 作系统返回代码是通过辅助返回代码返回的。 如果问题仍然存在,请联系系统管理员以采取纠正措施。
CSV 是从发出 Windows SendMessage 函数调用的另一个应用程序调用的消息循环发出的,而不是较常见的 Windows PostMessage 函数调用。 无法进行谓词处理。
SendMessage 调用应用程序时发出了 CSV。 可以使用 InSendMessage Windows API 函数调用来确定应用程序是否已使用 SendMessage 调用。
注解
有两个 API/链接服务跟踪文件。 文件被替代使用;当一个文件已满时,跟踪从一个文件切换到另一个文件(大于 250K)。 调用 COPY_TRACE_TO_FILE 时,这些跟踪文件将串联并复制到单个文件,该文件的名称指定为调用的参数。
API/链接服务跟踪在发出谓词之前停止,并在复制完成后重新启动。 成功完成此谓词后,将重置跟踪文件。