![]() |
|
||||||||||
|
|||||
|
Регистрация: Apr 2012
Сообщений: 14
|
При компиляции ошибок нет. Но с двойными слэшами тоже не работает.
import flash.utils.*; import flash.events.*; import flash.desktop.*; import flash.display.*; import flash.filesystem.*; if(NativeProcess.isSupported){ var process:NativeProcess = new NativeProcess(); var info:NativeProcessStartupInfo = new NativeProcessStartupInfo(); var processArg:Vector.<String> = new Vector.<String>(); processArg.push("md", "C:\Users\user\Desktop\test_cmd"); info.executable = new File("C:/Windows/System32/cmd.exe"); info.arguments = processArg; process.start(info); process.addEventListener("standardOutputData", onOutput); process.addEventListener("standardErrorData", onError); function onOutput(event:ProgressEvent):void{ var process:NativeProcess = event.target as NativeProcess; var data:String = process.standardOutput.readUTFBytes(process.standardOutput.bytesAvailable); trace(data) } function onError(event:ProgressEvent):void{ var process:NativeProcess = event.target as NativeProcess; var data:String = process.standardError.readUTFBytes(process.standardError.bytesAvailable); trace(data); } }else{ trace('Add <supportedProfiles>extendedDesktop</supportedProfiles> first!'); } |
|
|||||
|
собрал тестовый проект
папку создает через батник без проблем флешдевелоп, вин10х64 кстати параметры еще можно передавать создавая временный батник и вызывая его из первого на всякий случай выставлял админские права adl.exe |
|
|||||
|
listener
|
package { import flash.desktop.NativeProcess; import flash.desktop.NativeProcessStartupInfo; import flash.display.Sprite; import flash.filesystem.File; import flash.events.*; /** * ... * @author */ public class Main extends Sprite { public function Main():void { if(NativeProcess.isSupported){ var info:NativeProcessStartupInfo = new NativeProcessStartupInfo(); info.executable = new File("C:/Windows/System32/cmd.exe"); var processArg:Vector.<String> = new Vector.<String>(); processArg.push("/c"); processArg.push("md"); processArg.push("d:\\temp\\cmdtest"); info.arguments = processArg; var process:NativeProcess = new NativeProcess(); process.addEventListener("standardOutputData", onOutput); process.addEventListener("standardErrorData", onError); process.start(info); }else{ trace('Add <supportedProfiles>extendedDesktop</supportedProfiles> first!'); } } public function onOutput(event:ProgressEvent):void{ var process:NativeProcess = event.target as NativeProcess; var data:String = process.standardOutput.readUTFBytes(process.standardOutput.bytesAvailable); trace("out:" + data); } public function onError(event:ProgressEvent):void{ var process:NativeProcess = event.target as NativeProcess; var data:String = process.standardError.readUTFBytes(process.standardError.bytesAvailable); trace("err:" + data); } } } как положено в onError трейсится ошибка, если что-то не так (правда кракозябрами). В т.ч. и в случае, если путь в исходнике записан без двойных слэшей - ошибка. С двойными слэшами - тишина и папка создается по месту назначения. Попробуй с echo: будет трейсы в onOutput кидать? у меня кидает. |
|
|||||
|
Регистрация: Apr 2012
Сообщений: 14
|
Сработало! Просто не хотел писать на диск C... хз почему. Куда угодно еще пишет, а на Ц - нет
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 23:34. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|