我做了一些使用Flash徽章,AIR應用程序的技巧。和C#控制檯應用程序.. 我們可以發送參數到AIR應用程序。從BADGE和接收它使用:
protected function onInit(event:FlexEvent):void{
NativeApplication.nativeApplication.addEventListener(BrowserInvokeEvent.BROWSER_INVOKE, onBrowserInvoke);}
protected function onBrowserInvoke(e:BrowserInvokeEvent):void{
//reading args
var a:String = e.arguments[0];
//Now we can run *.exe from windows using:
if(NativeProcess.isSupported)
{
var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();
nativeProcessStartupInfo.executable = File.applicationDirectory.resolvePath("ExecutableApp.exe");
nativeProcessStartupInfo.arguments.push(a);
var process:NativeProcess = new NativeProcess();
//dispatched when the process will be finished
process.addEventListener(NativeProcessExitEvent.EXIT,onProcessDone);
//run
process.start(nativeProcessStartupInfo);
}
else Alert.show("Native process are not supported\nPrinter settings may be wrong!");
}
這是一個很長的路,但肯定有效!至少對我來說,它工作。
感謝您的信息和代碼亞歷克斯。我其實是Actionscript編程的新手,對你的代碼的一些解釋會非常有幫助。當我點擊一個按鈕時,閃存模塊中的輸出命令就會生成。另外我的是一個獨立的模塊,所以我不會在我的情況下生成BrowserInvokeEvent。另外,當你使用「ExecutableApp.exe」時,你的意思是這是將由Flash打開的應用程序的名稱。 – user1041254
如果是,應放置.exe文件的位置,並僅對AIR應用程序運行。在開始時,代碼在FlexEvent生成時開始工作。我如何根據需要進行修改。謝謝 – user1041254
1)創建AIR徽章 - [教程](http://www.adobe.com/devnet/air/articles/badge_for_air.html) 它可以是一個簡單的網頁按鈕或一個大的應用程序,可以與服務器。 當您單擊按鈕時,AIR應用程序將運行並且BrowserInvokeEvent將在AIR應用程序內分派。 之後,您可以使用上面的代碼自由運行.exe應用程序。 2)創建AIR應用程序。 - [教程](http://help.adobe.com/en_US/air/html/dev/WSb2ba3b1aad8a27b060d22f991220f00ad8a-8000.html) Flash - > AIR - > EXE(* .exe可以放在任何你想要的地方) – Alex