通过Flex应用程序重启计算机

时间:2013-09-19 19:47:59

标签: actionscript-3 flex command-prompt

我需要通过Flex应用程序重启计算机,我尝试了以下方法:

第一

    var process:NativeProcess;          
    var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();
    var file:File = File.applicationDirectory.resolvePath("assets/reboot.bat");
    nativeProcessStartupInfo.executable = file; 
    process = new NativeProcess();
    process.start(nativeProcessStartupInfo);

第二

var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();
var mp:File = new File();
mp = mp.resolvePath('C:\Windows\System32\cmd.exe');
nativeProcessStartupInfo.executable = mp;
var args:Vector.<String> = new Vector.<String>();
args.push('shutdown.exe /s /t 00');
nativeProcessStartupInfo.arguments = args;
var process:NativeProcess = new NativeProcess();
process.start(nativeProcessStartupInfo);

最后,在这里,我的文件位于包含主应用程序的同一目录中名为fscommand的目录中

fscommand("exec", "reboot.bat");

并且reboot.bat包含shutdown.exe /s /t 00

但这一切都无效......任何人都可以帮助我^^谢谢

1 个答案:

答案 0 :(得分:1)

一种方法是使用C ++或VB编写Native应用程序。使用套接字,从空中应用程序调用shutdown / restart命令到此本机应用程序。

如果您尝试访问AIR的工作目录以外的任何内容,则表示沙箱违规,AIR应用程序无法访问Windows system32文件夹的内容。您必须使用第三方应用程序执行此操作。