我想从CAPL脚本运行可执行文件。那有什么功能吗?
我正在寻找一个将在后台运行可执行文件的函数。例如。如果收到某个消息,则启动一个应用程序
CAPL中是否存在任何可能性?
答案 0 :(得分:2)
是的,有两个功能可以做到:
long sysExec(char cmd[], char params[]);
long sysExec(char cmd[], char params[], char directory[]);
long sysExecCmd(char cmd[], char params[]);
long sysExecCmd(char cmd[], char params[], char directory[]);
这些函数执行外部命令。他们不会等到命令完成执行。如果命令成功启动,则返回值为1;注意,由于调用不等待命令完成,因此不会返回命令本身的返回值。
必须为 sysExec
提供可执行文件; sysExecCmd
使用第一个参数调用cmd.exe /K
,这将打开一个命令窗口,执行该命令就像直接输入一样。
请注意,如果分布式仿真环境使用VN8900设备,实时模块(VT 6000系列)或CANoe RT服务器,sysExec
将在远程平台上执行请求的命令。
以下是一个例子:
sysExec("C:\\windows\\notepad.exe", "");
答案 1 :(得分:0)
如果不需要并行处理,则第三个选项是testwaitforsyscall()函数。
这将等待x超时到您的外部可执行文件返回,并分析您的应用程序是否正确,错误退出,出现错误或超时。