Войти

Показать полную графическую версию : [решено] Как отучить окно Dos закрываться


Папуас
07-04-2010, 23:10
Приветствую. Необходимо отучить Дос окно закрываться после завершения операции. С Бат файла понятно как. А как быть, если запуск идет с exe файла? Есть какая-либо глобальная настройка? Пиф файла в 7ке, как я понял, нету.

Win 7 64 Ultima ru

Спасибо)

zonderz
08-04-2010, 03:42
Папуас

если ничего не нароете можете на ПКМ ( в контекстное меню расширения exe-файла) добавить пункт запуск с помощью cmd (cmd.exe /k %1)

окно закрываться не будет. точно

Vadikan
08-04-2010, 09:49
А как быть, если запуск идет с exe файла? »
Как можно подробнее опишите, что вы делаете и как. Есть ощущение, что речь не об окне DOS, а о командной строке...

Папуас
08-04-2010, 11:48
если ничего не нароете можете на ПКМ ( в контекстное меню расширения exe-файла) добавить пункт запуск с помощью cmd (cmd.exe /k %1)
окно закрываться не будет. точно »

Я не совсем понял где находится контекстное меню расширения файла :)

Vadikan
Ну по сути эффект такой же, как от запуска команд в командной строке. Разве тем самым мы не вызываем Dos? Может я что-то путаю. Вот если в командную строку ввести пинг **.ru, то через 4 пинга оно разумеется закроется. Вот надо, чтобы не закрывалось) Думаю это решит и мою проблему. Спасибо за помощь.

Morpheus
08-04-2010, 11:53
Разве тем самым мы не вызываем Dos? »
Нет.
Вот если в командную строку ввести пинг **.ru, то через 4 пинга оно разумеется закроется. Вот надо, чтобы не закрывалось) »
Запускайте комм.строку: Пуск ---> в строке поиска пишем cmd ---> Enter, выполняйте команды, закрываться не будет.

Папуас
08-04-2010, 12:02
Разумеется) Но вы меня малость не поняли. Я привел этот пример, чтобы наглядно показать в чем проблема и что мне нужно сделать. А нужно, чтобы это окно автоматически не закрывалось именно при вводе самой команды не в окно cmd, а в командную строку. Т.к. у меня ее запускает Exe файл, а заставить его запустить cmd и прописать все там я не знаю как) Поэтому ищу способ, чтобы команды, вызывающие окно cmd для выполнения операций, не закрывали его после всех своих действий)

NoVViK
08-04-2010, 12:09
Папуас,
Пишите в вашем *.exe файле запуск команды как: cmd /k <ваша команда>
Окно закрываться не будет...

Dzirt2005
08-04-2010, 12:11
...
Поэтому ищу способ, чтобы команды, вызывающие окно cmd для выполнения операций, не закрывали его после всех своих действий) »
Никакого "окна cmd для выполнения операций" в этом случае нет. Есть консольное окно, созданное для выполнения данной программы. Программа завершилась - окно закрылось. Это вполне логичное поведение, вы сейчас ищите способ "я в меню Word выбрал команду Выход и его окно закрылось. Как бы сделать так, чтобы когда я выбираю Выход в меню программа Word бы завершалась, но ее окно не закрывалось?".

Если хотите, чтобы было "окно cmd для выполнения операций", то и вызывайте cmd и уже в нем выполняйте нужные команды.

Папуас
08-04-2010, 12:11
Как прописать? Это его надо вскрыть?) Чем это можно сделать? :)

Если хотите, чтобы было "окно cmd для выполнения операций", то и вызывайте cmd и уже в нем выполняйте нужные команды. »
А как узнать какие команды прописаны в том Экзешнике?) В предыдущих ОС был файл .pif в котором это вроде бы настраивалось. Как же быть с ОС 7)

Morpheus
08-04-2010, 12:14
не в окно cmd, а в командную строку. »
cmd и есть командная строка.
Пропишите команду примерно так:
cmd /k <команда>
например:
cmd /k ping 127.0.0.1

А как узнать какие команды прописаны в том Экзешнике? »
Спросить у автора?

Папуас
08-04-2010, 12:43
cmd и есть командная строка.
Пропишите команду примерно так: »
Спасибо, но это я знаю) Проблема в том, что мне нужно запустить екзешник, в котором команды, неизвестные мне) Поэтому я и ищу глобальную настройку, которая запретит закрываться консольному окну по окончанию операции или при ошибке выполнения операции. Ведь была подобная настройка в предыдущих ОС. Есть аналог в семерке? :)

Спросить у автора? »
Автор мне неизвестен) Нужно просто запустить экзешник.

zonderz
08-04-2010, 13:22
Папуас

Проблема в том, что мне нужно запустить екзешник, в котором команды, неизвестные мне)

ну и "перетягивайте" ехешники на открытый cmd.exe
или пропишите для удобства на пкм открыть с помощью cmd (ищите по форуму как создавать свои пункты в контекстном меню)
в чем проблема-то?!

Папуас
08-04-2010, 15:05
ну и "перетягивайте" ехешники на открытый cmd.exe »
Пробовал, разве результат один и тот же?)

Похоже тут то, о чем писал товарищ Dzirt2005

Никакого "окна cmd для выполнения операций" в этом случае нет. Есть консольное окно, созданное для выполнения данной программы. »


Я окончательно запутался %)

zai
08-04-2010, 15:38
А как узнать какие команды прописаны в том Экзешнике? »
*.exe /?

zonderz
08-04-2010, 19:34
Папуас

Я окончательно запутался %)

да ешкин крот....

способ 1:
открываете cmd
перетягиваете файл на окно, Enter

способ2:
в реестр импортируете


Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\exefile\shell\open with cmd]
[HKEY_CLASSES_ROOT\exefile\shell\open with cmd\command]
@="cmd.exe /k \"%1\" /?"


ПКМ на exe-файле > open with cmd

вот вы возитесь...

Villy2011
01-11-2013, 02:27
Есть такая консольная программа sigcheck.exe. Отображает версию и цифровую подпись файла. Хочу добавить ее в контекстное меню файлов. Добавил в реестр:

[HKEY_CLASSES_ROOT\*\shell\Проверить подпись]
[HKEY_CLASSES_ROOT\*\shell\Проверить подпись\command]
@="\"D:\\Programs\\Programers\\sysinternals\\SysinternalsSuite\\sigcheck.exe\" /file \"%1\""

Консольное окно открывается и сразу закрывается. Как правильно прописать чтобы окно не закрывалось?

Iska
01-11-2013, 03:58
Villy2011, откуда Вы параметр «/file» взяли? Здесь: Sigcheck (http://technet.microsoft.com/en-us/sysinternals/bb897441.aspx) — нет.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\Проверить подпись]

[HKEY_CLASSES_ROOT\*\shell\Проверить подпись\command]
@=hex(2):25,00,63,00,6f,00,6d,00,73,00,70,00,65,00,63,00,25,00,20,00,2f,00,6b,\
00,20,00,22,00,22,00,44,00,3a,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,\
6d,00,73,00,5c,00,50,00,72,00,6f,00,67,00,72,00,61,00,6d,00,65,00,72,00,73,\
00,5c,00,73,00,79,00,73,00,69,00,6e,00,74,00,65,00,72,00,6e,00,61,00,6c,00,\
73,00,5c,00,53,00,79,00,73,00,69,00,6e,00,74,00,65,00,72,00,6e,00,61,00,6c,\
00,73,00,53,00,75,00,69,00,74,00,65,00,5c,00,73,00,69,00,67,00,63,00,68,00,\
65,00,63,00,6b,00,2e,00,65,00,78,00,65,00,22,00,20,00,2f,00,66,00,69,00,6c,\
00,65,00,20,00,22,00,25,00,31,00,22,00,22,00,00,00

Или тупо:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\Проверить подпись]

[HKEY_CLASSES_ROOT\*\shell\Проверить подпись\command]
@="cmd.exe /k \"\"D:\\Programs\\Programers\\sysinternals\\SysinternalsSuite\\sigcheck.exe\" /file \"%1\"\""

Villy2011
01-11-2013, 10:04
Iska, откуда Вы параметр «/file» взяли? »
Хотел сделать по аналогии, посмотрел запись в реестре одной программы, которая запускается с этим параметром и решил, что это необходимый для запуска параметр для всех программ. Протупил :)

Спасибо за помощь!




© OSzone.net 2001-2012