Script 1.8.1

通过定义配置文件,预加载脚本

有时候,某些 Total Control 的使用者,需要预加载一些脚本,以简化后续操作。要达到这个目的并不难。只需在您的电脑上打开如下文件:

%appdata%\Sigma-RT\Total Control\Scripts\ preloadscripts.json

这个文件定义了要加载的脚本。示例如下:

{"0":"0.004.js","1":"0.005.scp"}

如果你按照上面方式配置,并且在电脑的 %我的文档 %\Scripts\ 路径下准备了正确的脚本文件:

0.004.js
0.005.scp

那么,在启动 Total Control 时,脚本 0.004.js 和 0.005.scp 就会被启动起来下面我们以一个示例对此进一步说明:

	//测试用本0.004.js
	//配置preloadscripts.json
	//{"0":"0.004.js"}
	//则此脚本将被调用
	(function() {
		var fs = require('fs');
		var preloadDir = java.lang.System.getenv('APPDATA') + "\\Sigma-RT\\Total Control\\scripts";
		if (!fs.isDirectory(preloadDir)) {
		    setError('Cannot locate TC directory :'+preloadDir);
		    return;
		}
		var preloadLogFile = preloadDir + '/preload.log';
		logInfo = function(info) {
		    try {
		    	var stream = fs.open(preloadLogFile, {binary:false, append:true});
		    	stream.write(info + "\r\n");
		    	stream.close();
		      return true;
		    } catch (e) {
		    	console.log(e);
		      setError(e);
		      return false;
		    }
		}
		logInfo("----------BEGIN----------");
		logInfo("----------END----------");
	})();

如果 preloadscripts.json 中引用了该脚本,那么在启动 Total Control 后,您会发现在文件 preload.log 中多了两条记录,分别为:

----------BEGIN----------
		和
----------END----------

注意:
需要明确一点,preloadscripts.json 中引用的脚本,是在 Total Control 启动之时调用的,在这个时候,尚无手机联接信息,所以在此类脚本中,Device 往往不可用,如果您要在此类脚本中调用以下语句,

var device = Device.getMain();

那么,非常遗憾地告诉您:
此时 device 的值一定为 null!