Гость
Форумы / Windows [игнор отключен] [закрыт для гостей] / Запуск приложения с параметрами из cmd файла / 25 сообщений из 45, страница 1 из 2
13.11.2009, 10:12
    #36308396
Cmd файл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Есть некое приложение (*.exe) необходимо выполнить запуск его из cmd файла. При запуске приложение получает параметры, которые ему передаются в командной строке, но проблема в том, что после запуска exe-фала cmd окно, из которого вызывается exe файл висит до тех пор, пока не оператор не завершит работу с exe-фалом. Как можно сделать вызов, чтобы после запуска приложения cmd окно закрывалось и не дожидалось закрытия окна основного приложения.
??
Код: plaintext
1.
2.
3.
4.
@If exist "%systemdrive%\Program Files\QST\qst.exe" (
"%systemdrive%\Program Files\QST\qst.exe" %systemdrive%\BRQ\BRQ.trs /qt /wt "%systemdrive%\BRQ\BRQ.inf" /user %Username% /call "MainMenu"
exit
)
При такой инструкции cmd окно закрывается по завершение работы с трассировщиком qst.exe, а очень хочется что бы оно не висело и не привлекало внимания...
...
Рейтинг: 0 / 0
13.11.2009, 10:20
    #36308418
const64
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
start *.exe?
...
Рейтинг: 0 / 0
13.11.2009, 10:36
    #36308475
Cmd файл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
const64,
нет пробовал, почему-то не видит второй параметр при данной форме записи
Код: plaintext
1.
2.
3.
4.
@If exist "%systemdrive%\Program Files\QST\qst.exe" (
start "%systemdrive%\Program Files\QST\qst.exe" %systemdrive%\BRQ\BRQ.trs /qt /wt "%systemdrive%\BRQ\BRQ.inf" /user %Username% /call "MainMenu"
exit
)
...
Рейтинг: 0 / 0
13.11.2009, 11:07
    #36308591
Cmd файл,
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Есть вариант поместить строку вызова в ярлык и вызывать его... Но это как-то не кашерно... :(
...
Рейтинг: 0 / 0
13.11.2009, 11:15
    #36308621
Andersson
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Выдержка из help-a cmd:
автор
Если это внутренняя команда cmd.exe или пакетный файл,
обработчик команд (cmd.exe) запускается с ключом /K.
Это означает, что окно не будет закрыто после завершения
команды.


Так как Вы используете команду If, то она распознается как внутренняя команда cmd и соответственно запускается с ключом /K!
...
Рейтинг: 0 / 0
13.11.2009, 11:43
    #36308742
Cmd файл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
AnderssonВыдержка из help-a cmd:
автор
Если это внутренняя команда cmd.exe или пакетный файл,
обработчик команд (cmd.exe) запускается с ключом /K.
Это означает, что окно не будет закрыто после завершения
команды.


Так как Вы используете команду If, то она распознается как внутренняя команда cmd и соответственно запускается с ключом /K!

Все понял, а какой же выход из ситуации?
...
Рейтинг: 0 / 0
13.11.2009, 11:49
    #36308772
const64
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Cmd файлAnderssonТак как Вы используете команду If, то она распознается как внутренняя команда cmd и соответственно запускается с ключом /K!

Все понял, а какой же выход из ситуации?

/c?
...
Рейтинг: 0 / 0
13.11.2009, 11:52
    #36308780
Andersson
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Можно сделать булеву переменную, в первой строке делаете проверку, и присваиваете true или false переменной, второй строкой проверяете эту переменную, в случае отсутствия программы по заданному пути, переменная примет значение false, и вы сможете сделать необходимые в этом случае процедуры, а соответственно на true не проверяете, если true - программа выполняет третью строку, где и есть команда запуска Вашей программы в чистом виде!
...
Рейтинг: 0 / 0
13.11.2009, 11:57
    #36308801
Biz©
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
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""
не ведитесь на домыслы, думайте
...
Рейтинг: 0 / 0
13.11.2009, 11:59
    #36308809
Biz©
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
техническая накладка
правильнее так:
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""
...
Рейтинг: 0 / 0
13.11.2009, 12:13
    #36308864
Andersson
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Что-то вроде такого:
Код: plaintext
1.
2.
3.
4.
If exist "%systemdrive%\notepad.exe" ( set i =  1 )
If i NEQ "1" (exit)
"%systemdrive%\notepad.exe"
exit
...
Рейтинг: 0 / 0
13.11.2009, 12:17
    #36308882
Andersson
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
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""
Да, так намного красивее! :)
...
Рейтинг: 0 / 0
13.11.2009, 12:56
    #36309033
Cmd файл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
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.
@If exist "%systemdrive%\Program Files\QST\qst.exe" (
exit
)
"%systemdrive%\Program Files\QST\qst.exe" %systemdrive%\BRQ\BRQ.trs /qt /wt "%systemdrive%\BRQ\BRQ.inf" /user %Username% /call "MainMenu"

Все равно cmd окно не закрывается, а вот со стартом никак не получается, приложение не видит параметр %systemdrive%\BRQ\BRQ.inf
Код: plaintext
1.
2.
3.
4.
@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"

Какие-то неполадки в кавычках, как их правильно расставить??
...
Рейтинг: 0 / 0
13.11.2009, 12:58
    #36309037
Cmd файл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Cmd файл,
Корректировка
Код: plaintext
1.
2.
3.
4.
@If Not 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"
...
Рейтинг: 0 / 0
13.11.2009, 14:18
    #36309334
Biz©
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Cmd файлКакие-то неполадки в кавычках, как их правильно расставить??
чо проще то взять пощитать в примере
Код: plaintext
1.
2.
@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"""
...
Рейтинг: 0 / 0
13.11.2009, 14:44
    #36309424
Cmd файл
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Нет так не работает, вываливается предупреждение программы, что испольщован неизвестный параметр.
А по какому принципу расставляются кавычки?
Я так понимаю, что вся строка заключается в кавычки:
start /B "вся выполняемая строка"
а если внутри неё есть то, что тоже надо поместить в кавычки, например путь с пробелом "Programm Files", объясните как это осуществить?
...
Рейтинг: 0 / 0
16.11.2009, 08:48
    #36311697
const64
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Попробуйте разделить на 2 cmd файла, типа:

Код: plaintext
1.
2.
3.
4.
@If exist "%systemdrive%\Program Files\QST\qst.exe" exit
start /B  111 .cmd

 111 .cmd:
"%systemdrive%\Program Files\QST\qst.exe" %systemdrive%\BRQ\BRQ.trs /qt /wt "%systemdrive%\BRQ\BRQ.inf" /user %Username% /call "MainMenu"
...
Рейтинг: 0 / 0
16.11.2009, 10:35
    #36311858
Andersson
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
покажи скриншот ошибки!
...
Рейтинг: 0 / 0
16.11.2009, 11:39
    #36312059
Biz©
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Cmd файлобъясните как это осуществить?
да добавляйте последовательно по 1 кавычке в начале и конце команды пока не заработает :)
побалуйтесь ещё ключиком /d
start /? в помощь
...
Рейтинг: 0 / 0
16.11.2009, 11:42
    #36312069
Andersson
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
а если команду (которая после старта написана), ввести в командную строку (run), и проверить будет работать или нет!?
...
Рейтинг: 0 / 0
16.11.2009, 12:26
    #36312205
Andersson
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
const64 попробуйте так:
Код: plaintext
1.
2.
3.
4.
5.
If exist %systemdrive%"\Program Files\QST\qst.exe" exit
start /B  111 .cmd

 111 .cmd:
%systemdrive%"\Program Files\QST\qst.exe" %systemdrive%\BRQ\BRQ.trs /qt /wt %systemdrive%"\BRQ\BRQ.inf" /user %Username% /call "MainMenu"
...
Рейтинг: 0 / 0
27.07.2010, 13:22
    #36761562
SergDior
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
Biz©Cmd файлКакие-то неполадки в кавычках, как их правильно расставить??
чо проще то взять пощитать в примере
Код: plaintext
1.
2.
@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"""


В этом случае для команды 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" "
...
Рейтинг: 0 / 0
27.07.2010, 13:39
    #36761618
aduka05adm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
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 для указанного пути.
...
Рейтинг: 0 / 0
27.07.2010, 13:42
    #36761628
aduka05adm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
SergDior,
где тут у вас тройные кавычки
Код: plaintext
1.
start /B " """%systemdrive%\Program Files\QST\qst.exe"""
это у вас заголовок пустой идет
...
Рейтинг: 0 / 0
27.07.2010, 13:47
    #36761648
aduka05adm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск приложения с параметрами из cmd файла
да и здесь кавычки зачем , переменная здесь не сработает скорее всего
Код: plaintext
@If exist "%systemdrive%\Program Files\QST\qst.exe" exit
можно и так
Код: plaintext
@If exist %systemdrive%\Program Files\QST\qst.exe exit
...
Рейтинг: 0 / 0
Форумы / Windows [игнор отключен] [закрыт для гостей] / Запуск приложения с параметрами из cmd файла / 25 сообщений из 45, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]