Script 1.8.1

scriptRun

原型:

scriptRun(name, scriptFile)

对应的 REST API:

执行脚本

描述:

运行指定脚本文件,通过该函数可以实现同时运行多脚本的目的。脚本文件可为 JS 文件,也可为 SCP 文件。

参数:

name: 别名,该脚本运行的别名。
scriptFile:脚本文件路径。可以使用文件绝对路径,也可使用用户自定义路径或者TC脚本默认路径的相对路径。

关于脚本路径的具体说明:

  • 绝对路径:指定scriptFile的绝对路径

  • 相对路径:相对路径有两种,一个是用户预定义路径,另一个是TC脚本缺省路径
    1. 用户预定义路径:
    i.如果用户的脚本中有如下定义:
    i.define('scriptPath', 'c:\\...');
    ii.则会到scriptPath对应的路径下寻找脚本,然后执行。

    2. TC脚本缺省路径:
    i.如果用户的脚本中未定义 scriptPath ,则会通过环境变量 TCSCRIPTPATH 进行查找路径是否有对应JS或SCP文件,如有,则执行,如无,进入下一个选项 .
    ii.如果用户的脚本中未定义 scriptPath ,则会查找

    <我的文档>/Scripts下是否有对应JS或SCP文件,如有,则执行,如无将退出执行

    注意,脚本路径的具体执行顺序如下:
    如果是绝对路径,直接执行。
    如果自定义了脚本路径,则检查该脚本路径下脚本文件是否存在,若存在,则执行;若不存在,则报错,错误是:找不到该脚本文件。
    如果未自定义脚本路径,则先找环境变量 TCSCRIPTPATH 对应的路径进行JS或SCP文件查找,若存在,则执行;若不存在,则报错,错误是:找不到该脚本文件。
    如果环境变量中未定义,将通过/此电脑/文档/Scripts/下是否有该文件,若存在,则执行;若不存在,则报错,错误是:找不到该脚本文件。


win7设置TCSCRIPTPATH 环境变量:

1. 点击“我的电脑”,选择属性。
2. 找到并打开“高级系统配置”。在接下来的页面中点击“高级系统配置”,打开“系统属性”窗口。
3. 找到“环境变量”按钮并点击。    
 4. 环境变量窗口。在环境变量窗口中一般有两个变量,一个是你当前所使用的用户独有的环境变量,另一个是所有用户都可以访问的系统变量。其实如果在你的电脑上你只使用一个用户的话,那么不管你修改的用户的环境变量还是系统变量,效果都是一样的。为了以防未来会新建其他用户,那么我建议你修改系统变量而不是某个用户独有的环境变量。
scriptRun_01.png
5. 在系统变量显示框中点击"新建",在弹出的“新建系统变量”框中,"变量名"填 TCSCRIPTPATH ,“变量值”填路径地址,例如:E:\tools。
6. 点击"确定"就设置成功了。
注意:
设置环境变量后,重启电脑上的 Total Control,设置才会生效。


返回值:

>0 : 运行ID值
<=0: 失败
异常:lastError();

示例:
//示例1,绝对路径
//运行绝对路径E:/sigmaTC/JScripts/Public/指定的脚本文件fileBinaryReader.js,脚本别名为fileBinaryReader1
var ret = scriptRun('fileBinaryReader1', 'E:/sigmaTC/JScripts/Public/fileBinaryReader.js');
if (ret > 0 ) {
    print("script run id :"+ret);
} else {
    print(lastError());
}


//示例2,相对路径(用户预定义路径)
//运行用户指定路径目录
define('scriptPath', 'E:/sigmaTC/JScripts/Public/');
//运行用户指定目录E:/sigmaTC/JScripts/Public/下的脚本文件fileBinaryReader.js,脚本别名为fileBinaryReader2
var ret = scriptRun('fileBinaryReader2', 'fileBinaryReader.js'); 
if (ret > 0 ) {
    print("script run id :"+ret);
} else {
    print(lastError());
}

//示例3,相对路径(TC脚本缺省路径)
//设置环境变量 TCSCRIPTPATH 为 'E:/sigmaTC/',则运行目录为'E:/sigmaTC/fileBinaryReader.js',脚本别名为fileBinaryReader3
var ret = scriptRun('fileBinaryReader3', 'fileBinaryReader.js'); 
if (ret > 0) {
    print("script run id :"+ret);
} else {
    print(lastError());
}

//示例4,相对路径(TC脚本缺省路径)
//运行目录:/此电脑/文档/Scripts/fileBinaryReader.js,脚本别名为fileBinaryReader4
var ret = scriptRun('fileBinaryReader2', 'fileBinaryReader.js'); 
if (ret > 0 ) {
    print("script run id :"+ret);
} else {
    print(lastError());
}
运行结果:
//成功运行脚本,则输出如下内容,否则输出错误信息。
script run id :1537301948136