![]() |
Настройка пре-билда
Во FlashDevelop-е в настройках проекта в Pre-Build Command Line пишу
Код:
"$(ProjectDir)\someFile.exe" |
попробуй запускать через батник
|
А Вондовс понимает что-нть типа
Код:
executable & |
Путем различных поисков и экспериментов достигнуто следующее:
Содержимое батника: Код:
start Full_path_to_file\ExampleForBat.exeИ особое внимание на то, что путь должен быть абсолютный, а не относительный, т.к. батник не знает с какой позиции ему начинать смотреть папки. В настройках девелопа Код:
$(ProjectDir)\ExampleForBat\bin\Debug\bat.batдевелоп не виснет, но ждет окончания работы прогарммы exe запускается и сам по себе работает корректно Компиляция не происходит, в output: Код:
Running process: ExampleForBat.as3proj" -ipc b9d2b83d-65a5-43a1-8271-82b35178de0a -version "4.6.0; 3.1" -compiler "D:\Program Files (x86)\FlashDevelop\Tools\flexsdk" -notrace -library "D:\Program Files (x86)\FlashDevelop\Library"В общем вот такая петрушка. На этом и застопорился. Может кто еще что подскажет? ЗЫ. Как в output-е избавиться от нечитаемых символов, типа бЇҐ |
А зачем консоль бьешь? Не надо. Оно само отвалится, если ехе - консольный и корректно отработал.
Насчет путей не уверен, но консоль запускаться должна с CurrentDir=батникDir, т.е в папке самого батника. ЗЫ. В пребилде бить плеер хорошо, ибо подвисает при дебуге нередко. |
Помоему в Виндовсе чтобы отобразить текущую директорию %PWD% - но может как-то не совсем так :)
Т.е. посмотри откуда FD батник запускает, не факт, что он его из его же директории запускает. Ну и как уже было сказано, если ExampleForBat.exe заканчивает работу со статусом 0, то он как бы сам и закроется. Помоему, start /B - если окошко консоли мешает. Т.е. так оно запустится без того, чтобы создавать новое окно. chcp <кодировка> - на сколько я знаю, меняет кодировку в консоли. |
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Сейчас поменял пути и атрибут B при start-е согласно рекомендациям. Поведение следующее (кстати, если команду из пребилда перенести в постбилд, ничего не меняется): Запускается батник, запускается приложение, консоль остается висеть и ждет команды, в output девеолпа выводится сообщение, что компиляция прошла успешно и все замирает. Откомпиленный проект в дебаге открывается только после закрытия консоли (способ завершения значения не имеет) |
Чтобы консоль закрыть можно в конец батника добавить exit.
Провел у себя такой тест. В папку (где лежит .as3proj) с проектом вложил батник и myExe.exe. Код:
start myExe.exeРезультат: ехе стартует, консоль не показвается, в процессах ее нету. Но пока не закроешь ехе билд не продолжается. В постбилд вписал start.bat. Результат: ехе стартует, консоль не показвается, в процессах ее нету. Билд суксессфул.Но пока не закроешь ехе плеер не запускается. Ну, хоть с путями все понятно. Собственно, вместо myExe можно запускать для наглядности calc или notepad: Код:
start notepadПроблема действительно имеет место быть. TanaTiX, сори, сразу не въехал. В чем может быть причина? Надо посмотреть сорсы FD. Внешне похоже на то, что пост/пребилды запускаются в отдельном потоке, к которому джойнится до его завершения основной поток, тот, в которм выполняется компиляция и запуск плеера. Вспомогательный поток для пре/постбилда имеет свойство завершаться после завершения всех запущенных им команд, будь то батник или ехе. С одной стороны вроде бы логично, с другой - вот такие траблы. Добавлено через 5 часов 21 минуту Ок. В сорсах бегло найти ничего толкового не удалось, да может это и не FD проблема, а fcsh. Решение. Расположение файлов .bat и .exe как я указал выше. Код:
REM start.batКод:
' start.vbsБилдим. Путь к ехе можно указать полный и положить его куда хочешь. |
Раз уж тут речь зашла о VB... а что будет если FD запустить из под Cygwin? Может так получится, что для него шеллом будет bash, а не cmd? :)
|
Мысль, конечно, интересная. Поменять шило на мыло :D.
Вообще, занятная ассоциация: VB<->cygwin.. мозг клинит. |
| Часовой пояс GMT +4, время: 06:55. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.