Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 是否使用Adobe AIR NativeProcess在Windows上启动.bat文件,不受支持?_Batch File_Air - Fatal编程技术网

Batch file 是否使用Adobe AIR NativeProcess在Windows上启动.bat文件,不受支持?

Batch file 是否使用Adobe AIR NativeProcess在Windows上启动.bat文件,不受支持?,batch-file,air,Batch File,Air,我可以在Mac上轻松启动“sh”文件,但当我在Windows上尝试使用bat时,我发现: 无法启动NativeProcess。”无法启动扩展名为“.bat”的文件。“出于安全原因 Windows上的AIR不允许您直接运行.bat文件。bat文件由命令解释器应用程序(cmd.exe)执行。调用.bat文件时,此命令应用程序可以将传递给命令的参数解释为要启动的其他应用程序。在参数字符串中恶意注入额外字符可能会导致cmd.exe执行有害或不安全的应用程序。例如,如果没有正确的数据验证,AIR应用程序可

我可以在Mac上轻松启动“sh”文件,但当我在Windows上尝试使用bat时,我发现:

无法启动NativeProcess。”无法启动扩展名为“.bat”的文件。“

出于安全原因

Windows上的AIR不允许您直接运行.bat文件。bat文件由命令解释器应用程序(cmd.exe)执行。调用.bat文件时,此命令应用程序可以将传递给命令的参数解释为要启动的其他应用程序。在参数字符串中恶意注入额外字符可能会导致cmd.exe执行有害或不安全的应用程序。例如,如果没有正确的数据验证,AIR应用程序可能会调用myBat.bat myArguments c:/evil.exe。除了运行批处理文件外,命令应用程序还将启动evil.exe应用程序

如果使用.bat文件调用start()方法,则NativeProcess对象会引发异常。Error对象的message属性包含字符串“Error#3219:无法启动NativeProcess”


相反,请尝试使用参数启动
cmd.exe
,将批处理文件.bat

重命名为*.bat,它会像一个符咒一样工作

安全问题到此为止

var batUrl:String = "outProtoCmd.bat";
var文件:文件=新文件(batUrl);
openWithDefaultApplication()文件

参数/c是做什么的?不知为什么它对我不起作用。var f:File=new文件(“C:\Windows\System32\cmd.exe”);这给了我一个错误,它不是一个有效的可执行文件。这个变量f:File=new File(“cmd.exe”),参数无效。愚蠢的我,我忘了避开反斜杠。新文件(“C:\\Windows\\System32\\cmd.exe”)。这很有效。