ハードウェアデバイスのブリッジとして.app/.exeファイルを使用するAirアプリケーションを作成しています。Adobe Air Appでバンドルして.app/.exeファイルを実行する
理想的には、私はAirアプリケーションインストーラで実行可能ファイルをインクルードし、Airアプリケーションと共に外部プログラムを起動したいと考えています。
1)これは可能ですか?
2)起動するOS固有のファイルをどのように決定するのですか?
EDIT:
var file:File = File.applicationDirectory;
file = file.resolvePath("src/assets/NativeApps");
if (Capabilities.os.toLowerCase().indexOf("win") > -1) {
file = file.resolvePath("Windows/echoTestWin.exe");
}
else if (Capabilities.os.toLowerCase().indexOf("mac") > -1) {
file = file.resolvePath("Mac/echoTestMac.app");
}
var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();
nativeProcessStartupInfo.executable = file;
var process = new NativeProcess();
process.start(nativeProcessStartupInfo)
しかし、なぜ、私は、このエラーメッセージが出ます:OK、上記のは非常に難しいことではありませんでしたか?
ArgumentError: Error #3214: NativeProcessStartupInfo.executable does not specify a valid executable file.
.app拡張子は有効ではありませんか?
.app拡張子を付けずに試しましたか? file.resolvePath( "Mac/echoTestMac")と同じですか? AIRでNativeProcessを使用したことは一度もありませんが、一般的にはMac OSのアプリケーションの拡張を省略することが一般的です。 –
ラース、入力のおかげで。しかし、アプリの拡張機能が動作するようです:trace(file.exists)=> true - それは明らかに何かを見つけるので... – dani