AS3.0調用.exe和.bat文件



import flash.events.ProgressEvent;
import flash.events.NativeProcessExitEvent;
private function callTest(event: Event): void
{
callExe("d:/a.exe");
callBat("d:/a.bat");
}


private function callExe(extUrl: String): void
{
//使用靜態屬性 NativeApplication.nativeApplication 獲取應用程序的 NativeApplication 實例
//指定在關閉所有窗口後是否應自動終止應用程序。

NativeApplication.nativeApplication.autoExit = true;
//調用的文件
var file: File = new File();
file = file.resolvePath(extUrl);
var nativeProcessStartupInfo: NativeProcessStartupInfo = new NativeProcessStartupInfo();
nativeProcessStartupInfo.executable = file;
var process: NativeProcess = new NativeProcess();
process.start(nativeProcessStartupInfo);
}


public static function callBat(batUrl: String): void
{
//調用bat文件
var exePath: String = "C:/Windows/system32/cmd.exe"; //cmd的路徑
var info: NativeProcessStartupInfo = new NativeProcessStartupInfo(); //啓動參數
info.executable = new File(exePath);
//參數
var processArg: Vector.<<span style="color:#2aa198;font-weight:bold;">String> = new Vector.<<span style="color:#2aa198;font-weight:bold;">String>();
processArg[0] = "/c"; //加上/c,是cmd的參數
processArg[1] = batUrl; //bat的路徑
info.arguments = processArg;
//執行
var process: NativeProcess = new NativeProcess();
process.addEventListener(NativeProcessExitEvent.EXIT, packageOverHandler);
process.addEventListener(ProgressEvent.STANDARD_OUTPUT_DATA, outputHandler);
process.start(info);
}


private static function outputHandler(event: ProgressEvent): void
{
trace("outputHandler");
}


private static function packageOverHandler(event: NativeProcessExitEvent): void
{
trace("packageOverHandler event: NativeProcessExitEvent");
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章