Adobe AIR to execute program
I would like to press a button from an Adobe AIR application and execute some installed program. For example, I would have a button named "Start Winamp". When this is pressed it should start Winamp.exe directly...I don't want some command line thing executed, I only want an exe to start. Or...is it the same thing ? Please, let me know if this is possible.
Thank you.
With AIR 2.0 you now can:
if(NativeProcess.isSupported)
{
var file:File = File.desktopDirectory;
file = file.resolvePath("StyleLookupold.exe");
var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo();
nativeProcessStartupInfo.executable = file;
var process:NativeProcess = new NativeProcess();
process.start(nativeProcessStartupInfo);
}
You also need to add this to your descriptor file.
<supportedProfiles>extendedDesktop</supportedProfiles>
There's no direct way of doing it. Try CommandProxy.
Read the blog post very carefully. You really need to create two different projects: a native OS executable and an AIR app. The native executable fires up your AIR application. The AIR application in turn requests for the executable to process OS-level requests.
Download the source from Google Code and create two projects -- a Visual Studio/Mono for the sample C# exe and another -- for the AIR application. Here is a link that describes how to set up the former.
In your AIR app's main MXML file, you need to do the following:
Create a
CommandProxy
object, add a few event listeners, for connection detection, andCommand
response and error.Connect to the native exe via a
connect
callIn the event handler for
connect
, create a newCommand
e.g.ScreenshotCommand
and execute it (viaCommandProxy.execute
method)
... and that's it!
Hope this helps.