2010-11-29 12 views
0

""をnativeprocessで実行されるmm.exeに渡す必要があります。私は「MIDIヨークから:1」を渡すとさえするNativeProcessに「\ を使用して、それが適切にアプリケーションを起動し、それがクラッシュしなくなりますどのような間違ってこのコードnativeprocessへの引数が失敗しました

private function soundbank():void { 
       var argMidi5:Vector.<String> = new Vector.<String>; 
       var file:File = File.applicationDirectory.resolvePath("java/mm.exe"); 
       argMidi5.push('-g 0 -m winmidi -o midi.winmidi.device="In From MIDI Yoke: 1"'); 

       npSB = new NativeProcessStartupInfo(); 
       npSB.workingDirectory = File.applicationDirectory; 
       direct = String(File.applicationDirectory); 
       npSB.executable = file; 

       npSB.arguments = argMidi5; 
       npSBOut = new NativeProcess(); 
       npSBOut.addEventListener(ProgressEvent.STANDARD_OUTPUT_DATA, onSoundbank); 
       npSBOut.start(npSB); 
       trace(argMidi5); 
      } 

答えて

2

。?引数はベクトルではなく、単一の文字列内の個々の文字列として渡され

+0

を – Proyb2

3

これ試してみてください。?。だから何がアプリケーションがなくて、それは動作しません、「」必要なソリューションです

argMidi5.push("-g"); 
argMidi5.push("0"); 
argMidi5.push("-m"); 
argMidi5.push("winmidi"); 
argMidi5.push("-o"); 
argMidi5.push("midi.winmidi.device=\"In From MIDI Yoke: 1\""); 
+0

それはよ受け入れないので、私は "="の後に二重引用符を付けずにそれを解決することができました。 – Proyb2

関連する問題