我正在尝试使用AIR 2的新NativeProcess API构建一个应用程序来自Brent的小视频:
http://tv.adobe.com/watch/adc-presents/preview-command-line-integration-in-adobe-air-2
但是我遇到了一些问题,即每次尝试启动流程时都会出错。
我正在运行OS X 10.5.8,我想运行diskutil并获取所有已安装卷的列表。
以下是我正在尝试的代码:
private function unmountVolume():void
{
if(!this.deviceMounted){ return; }
// OS X
if (Capabilities.os.indexOf("Mac") == 0){
diskutil = new NativeProcess();
// TODO: should really add event listeners
// in case of error
diskutil.addEventListener(ProgressEvent.STANDARD_OUTPUT_DATA, onDiskutilOut);
var startupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();
startupInfo.executable = new File('/usr/sbin/diskutil');
var args:Vector.<String> = new Vector.<String>();
args.push("list");
//args.push(this.currentVolumeNativePath);
startupInfo.arguments = args;
diskutil.start(startupInfo);
}
}
这看起来非常简单,并且基于他的grep示例。
我做错了什么想法?
答案 0 :(得分:4)
问题是我的描述符中没有添加以下行:
<supportedProfiles>extendedDesktop</supportedProfiles>
这应该更好地记录下来:)视频中没有提到它。