fscommand参数的非专有解决方案

时间:2012-12-26 13:15:21

标签: actionscript-3 flex fscommand

我想传递参数并从swf执行本地批处理脚本。我正在使用fscommand,我可以从中调用批处理文件,但我无法发送参数。我搜索了很多网并找到了一些解决方案。

SWF Studio

Flash Studio 还有一些

但我需要一些免费或廉价的解决方案。使用一个功能支付超过300美元对我没有意义。

1 个答案:

答案 0 :(得分:0)

我希望你试图在空中,而不是在浏览器中这样做。

在这种情况下,您可以在应用描述符文件中包含extendedDesktop个人资料支持,如下所示:

<supportedProfiles>extendedDesktop</supportedProfiles>

然后您可以启动您的批处理文件:

 protected function launchBatchWithParam(batchFileName:String, arguments:Array):void{
    var params:NativeProcessStartupInfo = new NativeProcessStartupInfo();
    params.arguments = new <String>['/C',File.applicationDirectory.nativePath+'/'+batchFileName];
        for each(var arg:String in arguments){
             params.arguments.push(arg);
        }
    var cmdFile:File =  File.applicationDirectory.resolvePath('C:\\WINDOWS\\system32\\cmd.exe');
    params.executable =  cmdFile;
    var process:NativeProcess = new NativeProcess();
    process.start(params);                  
}

你必须在cmd.exe的帮助下启动你的蝙蝠,因为adobe的人们存在可疑的安全问题,因为.bat文件是被禁止的。