跳转至

DLLOneScriptValidate

函数 DLLOneScriptValidate 对 OneScript 脚本内容进行编译验证,不执行程序。(返回 JSON 格式的错误列表,包含错误行号和描述。)

所属:C/C++ API 函数索引

C/C++

ErrorCode DLLOneScriptValidate(INT_PTR hClientHandle, int taskId, const char* scriptContent, int scriptLength, int* outErrorCount, char* outErrors, int* inOutErrorsSize);

C#

Controller.Tasks[taskId].OneScript.Validate(content) — 验证脚本内容是否可编译。

参数

hClientHandle (INT_PTR)

客户端会话句柄,由 DLLSysConnect 获取。

taskId (int)

任务编号(1-indexed)。

scriptContent (const char*)

脚本内容字符串(OneScript/OneScript 源代码)。

scriptLength (int)

*scriptContent 的字符数(不含终止 \0)。可传入 strlen(scriptContent)

outErrorCount (int*)

输出。接收编译错误数量。如果无错误则输出 0。

outErrors (char*)

输出。接收 JSON 格式错误列表字符串。每个错误包含行号和错误描述。

inOutErrorsSize (int*)

输入输出。*outErrors 缓冲区容量;返回时写入实际写入的字符数。

返回值

返回 ErrorCodeNoError (0) 表示验证完成(无论是否有错误),正值为执行失败,详见 SDK 发布头 ErrorCode.h。

说明

验证结果为 NoError*outErrorCount > 0 表示脚本有编译错误但不影响验证流程。

示例

int errorCount = 0;
char errors[1024] = {0};
int errorsSize = sizeof(errors);
ErrorCode err = DLLOneScriptValidate(handle, 1, content, (int)strlen(content),
                                     &errorCount, errors, &errorsSize);

相关函数