脚本示例:集成 Schneider Modsoft 组件的编辑器
该脚本解决方案可优化施耐德 Modsoft 组件的处理。
该脚本功能所需的文件
文件名 | 描述 | 功能性 |
---|---|---|
ScriptBeforeEdit.exe | 已在脚本包中提供 | 根据组件类型 ID 的不同,可通过编辑器链接项目文件 |
ScriptBeforeEdit.ini | 可使用文本编辑器进行编辑 | 为特定组件类型 ID 定义 BeforeEdit 脚本 |
SchneiderModsoft.script | 可使用文本编辑器进行编辑 | 脚本解释器处理的脚本 |
ModsoftCaller.bat | 可使用文本编辑器进行编辑 | 调用 Modsoft 编辑器或其他编辑器的批处理文件 |
脚本解决方案的前提条件
- 必须在所有相关计算机上安装并授权 Schneider Modsoft 编辑器,这些计算机要与 UserClient一起设置编辑器集成。
- 建议在所有计算机上将 Modsoft 安装在相同的目录中(例如
C:\Modsoft\editor
)。
设置脚本
激活 ScriptBeforeEdit.exe
将应用程序复制到 用于客户端自动升级的服务器脚本编写目录 选项卡。
编辑 ScriptBeforeEdit.ini
我们建议您添加服务器脚本目录中任何现有的ScriptBeforeEdit.ini
文件,以便自动更新客户端更新。如果(尚未)存在此文件,请使用脚本包中的模板。
- 在[常规]部分输入组件类型到脚本的连接,激活施耐德 Modsoft 脚本。
- 如果要链接多个不同的组件类型到脚本,则必须为每个组件类型 ID 创建一个新的条目。
- 保存该文件。
- 将文件复制到 用于客户端自动升级的服务器脚本编写目录 选项卡。
例如:
具体例子:
编辑 SchneiderModsoft.script
- 在文本编辑器中打开
SchneiderModsoft.script
文件。 - 如有必要,请根据下表进行调整。
- 保存该文件。
- 将文件复制到 用于客户端自动升级的服务器脚本编写目录 选项卡。
脚本
Function ScriptBeforeEdit
{
$def::var1 = C:\Modsoft\Editor
$def::var2 = $func::getfilename($vdog::specific->SelectedFile)
$def::var3 = $func::getshortdir($vdog::specific->WorkingDir)
// Create UPF file:
file.create $def::var1\$def::var2.upf
{
write.line rt_directory $def::var1\RUNTIME
write.line tmp_directory $def::var1\TMP
write.line files_directory $def::var3
write.line names_directory $def::var
}
// Customize ENV:
file.replace $def::var3\$def::var2.env
{
row.1 $def::var3\
row.2 $def::var3\
row.3 $def::var3\
row.4 $def::var3\
row.5 $def::var3\
}
// Update Modsoftcaller:
file.copy
{
source $vdog::myrundir\ModsoftCaller.bat
dest $def::var1\ModsoftCaller.bat
}
// Execute Modsoft batch:
call $def::var1\ModsoftCaller.bat
{
arg $def::var2.upf
arg $def::var2.env
wait 0
}
done
}
自定义
第 3 行:
在此处调整 Modsoft 编辑器的绝对路径。
第 37 行:
在本例中,只有文件名作为参数传递。如果要绝对指定 UPF 文件,这一行应为:arg $def::var1\$def::var2.upf。
第 38 行:
在本例中,只有文件名作为参数传递。如果要绝对指定 ENV 文件,这一行应为:arg $def::var3\$def::var2.upf。
第 39 行:
如果您要等待到编辑器关闭,请删除此行。
编辑 ModsoftCaller.bat
-
在文本编辑器中打开
ModsoftCaller.bat
文件。 -
如果有必要,请调整 Modsoft 编辑器的目录。
- 您也可以在此调用另一个应用程序(如 Modbusplus 耦合器的 USB 驱动程序)。
- 保存该文件。
- 将文件复制到 用于客户端自动升级的服务器脚本编写目录 选项卡。