在 CI(持续集成)服务器等自动化环境中,或者如果CODESYS 中的脚本必须由其他程序控制,则菜单命令不适合用于执行脚本。对于这类需求,您可以使用 Windows 命令行启动CODESYS 并执行脚本。
要求:一个有效的 Python 脚本文件<file name>.py 位于文件系统中。
-
使用
start创建 cmd 文件,启动CODESYS ,并使用--runscript选项执行脚本文件。如果不打开CODESYS- 用户界面,还可以使用其他选项,例如--noUI。 -
打开 Windows“命令提示符” 并执行 CMD 文件。
您可以向脚本传递包含附加信息的参数。Python 脚本可以使用sys.argv[] list 访问参数。第一个元素(索引 0)总是要执行的 Python 脚本的名称或路径,然后是 "实际 "参数。(这类似于 C 语言中的argc/argv )。此外,脚本还可以通过相应的 Python 或 .NET API 访问CODESYS 启动前设置的环境变量。
示例
CMD 批处理文件argvtestbat.cmd 包含以下内容(均为一行)。
"C:\Program Files (x86)\CODESYS 3.5.17.0\CODESYS\Common\CODESYS.exe" --profile="CODESYS V3.5 SP17" --runscript="D:\Dokumente\Scripting\ArgvTestScript.py" --scriptargs:'username password 3.14 "path=\"C:\temp\\\""' --noUI
您有一个匹配的脚本文件ArgvTestScript.py 。
from __future__ import print_function
import sys
print("sys.argv: ",
len(sys.argv),
" elements:")
for arg in sys.argv:
print(" - ", arg)
现在,当您执行 CMD 文件时,CODESYS 会启动并执行脚本,而不会打开CODESYS 主窗口。然后退出CODESYS :

有关所有可能的命令行参数的完整参考信息,请参阅CODESYS 中 "--runscript"部分的命令行界面帮助页面。
有关 Python API 的信息,请参见:⮫ https://docs.python.org/2/library/os.html#process-parameters
有关 .NET-API 的信息,请参见:⮫ https://msdn.microsoft.com/de-de/library/77zkk0b6%28v=vs.110%29.aspx
-
另请参见 ⮫ “使用命令行界面”