2010-08-19 15 views
3

Je voudrais exécuter une commande CMD à partir de mon application flexible par programme. Quelque chose commeComment exécuter des commandes CMD dans flex en utilisant actionscript?

> mediaplayer.exe "mySong.mp3" 

J'ai également essayé d'utiliser fscommand mais cela n'a pas réussi. Tout en googlant j'ai appris que ce n'est pas pris en charge par AIR. Je voudrais savoir s'il existe une autre alternative pour l'exécution des commandes. Merci ...

Répondre

7

Vous devez utiliser NativeProcess qui est disponible uniquement dans AIR 2.0+

Cela devrait faire l'affaire:

if(NativeProcess.isSupported) 
{ 
    var nativeProcessStartupInfo:NativeProcessStartupInfo = new NativeProcessStartupInfo(); 

    var mp:File = new File(); 
    mp = mp.resolvePath('native\path\to\mediaplayer.exe'); 

    nativeProcessStartupInfo.executable = mp; 

    var args:Vector.<String> = new Vector.<String>(); 

    args.push('mySong.mp3'); 

    nativeProcessStartupInfo.arguments = args; 

    var process:NativeProcess = new NativeProcess(); 

    process.start(nativeProcessStartupInfo); 

} 

Assurez-vous également que votre fichier contient app.xml ceci:

<supportedProfiles>extendedDesktop</supportedProfiles> 
+0

Merci Alxx et John. Les deux réponses m'ont vraiment aidé. Mais je ne pouvais en accepter qu'un. :( @John: L'application ne fonctionne que lorsque 'extendedDesktop' est seul dans le noeud.L'introduire avec 'desktop' lance 'non pris en charge dans l'erreur de profil actuelle' – Goje87

+0

@ Goje87 merci pour les commentaires, j'ai mis à jour mon répondre pour refléter cela –

+0

Est-il possible d'attraper la réponse de la fenêtre de ligne de commande dans Flex Application. –

2

Il est pris en charge par AIR 2.0, voir http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/desktop/NativeProcess.html

En outre, vous devez déployer votre application non comme un fichier .air, mais comme un installateur natif pour NativeProcess à travailler (avec HAA console de AIR SDK). Il y a plusieurs pièges sur le chemin, mais cela peut être fait. En cours de développement, vous pouvez tester NativeProcess facilement.

+0

Voici une application qui va convertir un fichier .air à un installateur natif: http://www.webkitchen.be/package-assistant-pro/ –

Questions connexes