Могу ли я запустить программу с графическим интерфейсом в фоновом режиме в командной строке Windows?


Ответы:


21

Команда для запуска программ из командной строки в Windows - «Пуск»

Starts a separate window to run a specified program or command.

START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
      [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
      [/AFFINITY <hex affinity>] [/WAIT] [/B] [command/program]
      [parameters]

    "title"     Title to display in  window title bar.
    path        Starting directory
    B           Start application without creating a new window. The
                application has ^C handling ignored. Unless the application
                enables ^C processing, ^Break is the only way to interrupt
                the application
    I           The new environment will be the original environment passed
                to the cmd.exe and not the current environment.
    MIN         Start window minimized
    MAX         Start window maximized
    SEPARATE    Start 16-bit Windows program in separate memory space
    SHARED      Start 16-bit Windows program in shared memory space
    LOW         Start application in the IDLE priority class
    NORMAL      Start application in the NORMAL priority class
    HIGH        Start application in the HIGH priority class
    REALTIME    Start application in the REALTIME priority class
    ABOVENORMAL Start application in the ABOVENORMAL priority class
    BELOWNORMAL Start application in the BELOWNORMAL priority class
    AFFINITY    The new application will have the specified processor
                affinity mask, expressed as a hexadecimal number.
    WAIT        Start application and wait for it to terminate

Вы можете использовать опцию MIN для запуска свернутой программы


2
К вашему сведению, правильной командой в этом случае является «start / B emacs foo.txt». В противном случае он запускается в собственном консольном окне, что приемлемо, но раздражает. :-)
Джейсон Бейкер

3

Я не знаю, будет ли этого достаточно, но попробуйте

start emacs foo.txt

Он не будет переходить в фоновый режим, а скорее запустит отдельное окно cmd.exe для команды.


2

Ха-ха, у меня получилось, использовать возвышенный текст3 в качестве сервера предварительного просмотра уценки - мое предложение, после того, как я закрыл окно возвышенного текста, я не буду работать. Я бы попробовал много методов, в конце концов это работает. Во-первых, вы должны создать летучую мышь, чтобы запустить эту программу.

start  /B "" "D:\dev\sublime3\Sublime Text 3\subl.exe" "-s" "%USERPROFILE%\Dropbox\dev\apis\*.markdown" 

во-вторых, запустить эту летучую мышь по расписанию задачи.

run window+R->taskschd.msc->add a task

добавить триггер для запуска этой битой в соответствии с этим графиком

добавить эту летучую мышь как операцию для выполнения

Это приводит к тому, что он работает, чтобы не показывать окно возвышенного текста. И это работает в конфликте с возвышенным текстом, обычно открытым.

Возможно, вы уже догадались, я использую OmniMarkupPreviewerплагин для предварительного просмотра уценки. Я исправил эту ошибку (или не идеальную функцию), что она каждый раз использует разные идентификаторы представления.


1

Зависит от того, какую версию Windows вы используете.

В Vista вы должны иметь возможность ввести имя исполняемого файла в вашем пути и запустить его после закрытия командной строки.



1

К сожалению, я не думаю, что это возможно.

Вы можете сделать это в скрипте Windows Scripting Host, например:

Set oShell = WScript.CreateObject("WScript.Shell")
Set oProc = oShell.Run "<your command here>",0,True

Где "0" означает, что полученное окно должно быть скрыто (другие параметры см. В документации по адресу http://msdn.microsoft.com/en-us/library/d5fk67ky(VS.85).aspx ) и " true "означает, что вы хотите дождаться завершения команды, прежде чем ваш скрипт продолжит работу.

Это было бы простым упражнением, чтобы обернуть это в общий сценарий «Запустить эту команду скрытый», который вы могли бы использовать из командной строки.

Если у вас установлен новый Microsoft PowerShell, возможно, существует более простой способ сделать это (я еще не работал с PowerShell).

Если вы счастливы, что окно свернуто, вы можете сделать это с помощью команды «Пуск», которую упоминают другие. К сожалению, опция "/ B" (которая звучит так, как будто вы хотите) предназначена только для команд и не останавливает появление оконных приложений на экране.

Примечание: что бы из вышеперечисленного вы не использовали для запуска программы со скрытым / свернутым основным окном, ничто не мешает ему создавать новые видимые окна или поднимать главное окно и фокусировать его после запуска.


1

sc create service и запустить его имеет специальные символы на файл и параметры, например,

sc create ngrok "cmd /c \"c:\tmp\ngrok.exe\" http 80" type=own type=interactive

1
sc create nrgok binpath = "cmd / c \" c: \ tmp \ ngrok.exe \ "http 80" type = own type = взаимодействовать
Lalo
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.