|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Есть некое приложение (*.exe) необходимо выполнить запуск его из cmd файла. При запуске приложение получает параметры, которые ему передаются в командной строке, но проблема в том, что после запуска exe-фала cmd окно, из которого вызывается exe файл висит до тех пор, пока не оператор не завершит работу с exe-фалом. Как можно сделать вызов, чтобы после запуска приложения cmd окно закрывалось и не дожидалось закрытия окна основного приложения. ?? Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 10:12 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
start *.exe? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 10:20 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
const64, нет пробовал, почему-то не видит второй параметр при данной форме записи Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 10:36 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Есть вариант поместить строку вызова в ярлык и вызывать его... Но это как-то не кашерно... :( ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 11:07 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Выдержка из help-a cmd: автор Если это внутренняя команда cmd.exe или пакетный файл, обработчик команд (cmd.exe) запускается с ключом /K. Это означает, что окно не будет закрыто после завершения команды. Так как Вы используете команду If, то она распознается как внутренняя команда cmd и соответственно запускается с ключом /K! ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 11:15 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
AnderssonВыдержка из help-a cmd: автор Если это внутренняя команда cmd.exe или пакетный файл, обработчик команд (cmd.exe) запускается с ключом /K. Это означает, что окно не будет закрыто после завершения команды. Так как Вы используете команду If, то она распознается как внутренняя команда cmd и соответственно запускается с ключом /K! Все понял, а какой же выход из ситуации? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 11:43 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Cmd файлAnderssonТак как Вы используете команду If, то она распознается как внутренняя команда cmd и соответственно запускается с ключом /K! Все понял, а какой же выход из ситуации? /c? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 11:49 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Можно сделать булеву переменную, в первой строке делаете проверку, и присваиваете true или false переменной, второй строкой проверяете эту переменную, в случае отсутствия программы по заданному пути, переменная примет значение false, и вы сможете сделать необходимые в этом случае процедуры, а соответственно на true не проверяете, если true - программа выполняет третью строку, где и есть команда запуска Вашей программы в чистом виде! ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 11:52 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
qqq.cmd@echo off if not exist c:\windows\notepad.exe exit start /B """C:\Program Files\Internet Explorer\IEXPLORE.EXE" http://www.sql.ru/forum/actualtopics.aspx?bid=27"" не ведитесь на домыслы, думайте ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 11:57 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
техническая накладка правильнее так: qqq.cmd@echo off if not exist "C:\Program Files\Internet Explorer\IEXPLORE.EXE" exit start /B """C:\Program Files\Internet Explorer\IEXPLORE.EXE" http://www.sql.ru/forum/actualtopics.aspx?bid=27"" ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 11:59 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Что-то вроде такого: Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 12:13 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Biz©техническая накладка правильнее так: qqq.cmd@echo off if not exist "C:\Program Files\Internet Explorer\IEXPLORE.EXE" exit start /B """C:\Program Files\Internet Explorer\IEXPLORE.EXE" http://www.sql.ru/forum/actualtopics.aspx?bid=27"" Да, так намного красивее! :) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 12:17 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Biz©техническая накладка правильнее так: qqq.cmd@echo off if not exist "C:\Program Files\Internet Explorer\IEXPLORE.EXE" exit start /B """C:\Program Files\Internet Explorer\IEXPLORE.EXE" http://www.sql.ru/forum/actualtopics.aspx?bid=27"" Сделал, но без start Код: plaintext 1. 2. 3. 4.
Все равно cmd окно не закрывается, а вот со стартом никак не получается, приложение не видит параметр %systemdrive%\BRQ\BRQ.inf Код: plaintext 1. 2. 3. 4.
Какие-то неполадки в кавычках, как их правильно расставить?? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 12:56 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Cmd файл, Корректировка Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 12:58 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Cmd файлКакие-то неполадки в кавычках, как их правильно расставить?? чо проще то взять пощитать в примере Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 14:18 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Нет так не работает, вываливается предупреждение программы, что испольщован неизвестный параметр. А по какому принципу расставляются кавычки? Я так понимаю, что вся строка заключается в кавычки: start /B "вся выполняемая строка" а если внутри неё есть то, что тоже надо поместить в кавычки, например путь с пробелом "Programm Files", объясните как это осуществить? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.11.2009, 14:44 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Попробуйте разделить на 2 cmd файла, типа: Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2009, 08:48 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
покажи скриншот ошибки! ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2009, 10:35 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Cmd файлобъясните как это осуществить? да добавляйте последовательно по 1 кавычке в начале и конце команды пока не заработает :) побалуйтесь ещё ключиком /d start /? в помощь ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2009, 11:39 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
а если команду (которая после старта написана), ввести в командную строку (run), и проверить будет работать или нет!? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2009, 11:42 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
const64 попробуйте так: Код: plaintext 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
16.11.2009, 12:26 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
Biz©Cmd файлКакие-то неполадки в кавычках, как их правильно расставить?? чо проще то взять пощитать в примере Код: plaintext 1. 2.
В этом случае для команды start путь к программе нужно брать в тройные кавычки, для всего остального кроме путей к файлам, можно использовать одинарные кавычки : @If exist "%systemdrive%\Program Files\QST\qst.exe" exit start /B " """%systemdrive%\Program Files\QST\qst.exe""" %systemdrive%\BRQ\BRQ.trs /qt /wt "%systemdrive%\BRQ\BRQ.inf" /user %Username% /call "MainMenu" " ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2010, 13:22 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
start /? Запуск указанной программы или команды в отдельном окне. START ["заголовок"] [/Dпуть] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED] [/LOW | /NORMAL | /HIGH | /REALTIME| /ABOVENORMAL | /BELOWNORMAL] [/WAIT] [/B] [команда/программа] [параметры] "заголовок" Заголовок окна. ЗОГОЛОВОК НАДО ВСТАВЛЯТЬ ХОТЬ ПУСТОЙ " " путь Рабочий каталог. B Запуск приложения без создания нового окна с отключением обработки сочетания клавиш ^C. Если приложение не обрабатывает сочетание клавиш ^C самостоятельно, единственным способом его прерывания является использование сочетания клавиш ^Break. I Новой средой станет исходная среда, переданная cmd.exe, а не текущая среда. MIN Запуск команды/программы в свернутом окне. MAX Запуск команды/программы в развернутом окне. SEPARATE Запуск 16-разрядной программы Windows в отдельной области памяти. SHARED Запуск 16-разрядной программы Windows в общей области памяти. LOW Запуск приложения с приоритетом IDLE. NORMAL Запуск приложения с приоритетом NORMAL. HIGH Запуск приложения с приоритетом HIGH. REALTIME Запуск приложения с приоритетом REALTIME. WAIT Запуск приложения с ожиданием его завершения. ABOVENORMAL Запуск приложения с классом приоритета ABOVENORMAL BELOWNORMAL Запуск приложения с классом приоритета BELOWNORMAL команда/программа Если это внутренняя команда cmd.exe или пакетный файл, обработчик команд (cmd.exe) запускается с ключом /K. Это означает, что окно не будет закрыто после завершения команды. Если это не внутренняя команда cmd.exe и не пакетный файл, значит, это программа, которая будет запущена в графическом или текстовом окне. параметры Параметры, передаваемые команде/программе. Изменения вызова внешних команд из командной строки или с помощью команды START при включении расширенной обработки команд: Для вызова неисполняемых файлов через механизм сопоставления типов файлов достаточно просто ввести имя файла в командной строке. Например, команда WORD.DOC запускает приложение, сопоставленное расширению имени файла .DOC. Сведения о создании подобных сопоставлений из пакетных файлов приведены в описаниях команд ASSOC и FTYPE. При запуске 32-разрядного приложения с графическим интерфейсом пользователя обработчик команд CMD.EXE не ожидает завершения работы приложения перед возвратом к приглашению командной строки. Подобное новое поведение НЕ относится к запуску приложений из пакетных файлов. При выполнении командной строки, первым элементом которой является текстовая строка "CMD" без расширения имени файла или указания пути, она заменяется значением переменной COMSPEC. Это предотвращает запуск CMD.EXE из текущей активной папки, если таковая программа там имеется. Если первый элемент командной строки не содержит расширения имени файла, обработчик команд CMD.EXE использует значение переменной среды PATHEXT, чтобы определить расширения имен исполняемых файлов и порядок поиска нужного файла. По умолчанию для переменной PATHEXT задается значение: .COM;.EXE;.BAT;.CMD Обратите внимание, что этот синтаксис подобен синтаксису для переменной PATH, то есть отдельные элементы разделяются точкой с запятой. Если при поиске исполняемого файла нет соответствия ни одному из расширений, выполняется проверка соответствия указанного имени папки. Если имя папки соответствует указанному, то команда START запускает EXPLORER для этого пути. Если такое действие выполняется из командной строки, то оно эквивалентно выполнению команды CD /D для указанного пути. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2010, 13:39 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
SergDior, где тут у вас тройные кавычки Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2010, 13:42 |
|
Запуск приложения с параметрами из cmd файла
|
|||
---|---|---|---|
#18+
да и здесь кавычки зачем , переменная здесь не сработает скорее всего Код: plaintext
Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2010, 13:47 |
|
|
start [/forum/topic.php?fid=26&fpage=24&tid=1492828]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
166ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 296ms |
0 / 0 |