在air 2.0中,可以利用NativeProcess启动本地应用程序,大大方便了桌面应用程序的编写。使用方法如下:
参考:http://hi.baidu.com/sl19880127sl/blog/item/d6894c3375fe8ef51b4cffd6.html
1、编写action script:
var file:File = File.applicationDirectory;
file = file.resolvePath("c:\\windows\\notepad.exe");
var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo ();
nativeProcessStartupInfo.executable = file;
var process:NativeProcess = new NativeProcess ();
process.start (nativeProcessStartupInfo);
如果启动的应用程序需要带参数,如打开文件,则设置
var arg:Vector.<String> = new Vector.<String> ();
arg.push ("c:\\1.txt");
nativeProcessStartupInfo.arguments = arg;
2、设置profile:
将<supportedProfiles>extendedDesktop</supportedProfiles>
放到“应用程序名-app.xml”文件的相应位置,具体位置如下:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<application xmlns="http://ns.adobe.com/air/application/2.0">
<supportedProfiles>extendedDesktop</supportedProfiles>
3、打包
通过步骤1、2后,就可以在flash builder 4中进行调试了,但是在直接打包成air文件发布时,会出错,这是因NativeProcess不允许出现在air文件中,因此,只能发布成exe文件。在生成发布时,选择生成exe文件即可。
参考:http://hi.baidu.com/sl19880127sl/blog/item/d6894c3375fe8ef51b4cffd6.html
1、编写action script:
var file:File = File.applicationDirectory;
file = file.resolvePath("c:\\windows\\notepad.exe");
var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo ();
nativeProcessStartupInfo.executable = file;
var process:NativeProcess = new NativeProcess ();
process.start (nativeProcessStartupInfo);
如果启动的应用程序需要带参数,如打开文件,则设置
var arg:Vector.<String> = new Vector.<String> ();
arg.push ("c:\\1.txt");
nativeProcessStartupInfo.arguments = arg;
2、设置profile:
将<supportedProfiles>extendedDesktop</supportedProfiles>
放到“应用程序名-app.xml”文件的相应位置,具体位置如下:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<application xmlns="http://ns.adobe.com/air/application/2.0">
<supportedProfiles>extendedDesktop</supportedProfiles>
3、打包
通过步骤1、2后,就可以在flash builder 4中进行调试了,但是在直接打包成air文件发布时,会出错,这是因NativeProcess不允许出现在air文件中,因此,只能发布成exe文件。在生成发布时,选择生成exe文件即可。