PDA

Показать полную графическую версию : Запустить процесс на заднем плане


allmas777
18-08-2013, 04:06
Имеется обычный батник вида
@echo off
:x
start /min c:\process.exe
:END
Необходимо, что бы при выполнении данной команды не сворачивалось активное окно (обычно из полноэкранного режима).
Искал команду развернувшую бы определенный процесс обратно на передний план, были варианты с wmic, api, powershell, но если бы я в этом понимал то не писал бы здесь
Подскажите как решить проблему?

Iska
18-08-2013, 05:05
WSH:
WScript.CreateObject("WScript.Shell").Run """c:\process.exe""", 7, False

allmas777
18-08-2013, 05:46
Iska, необходимо что бы уже ранее запущений процесс, появлялся поверх всех остальный окон/разворачивался в свой полноэкранный режим, т.е при запуске батника первым шагом запускается process.exe а следующим разворачивается поверх всех окон app.exe

Iska
18-08-2013, 06:45
Iska, необходимо что бы уже ранее запущений процесс, появлялся поверх всех остальный окон/разворачивался в свой полноэкранный режим, »
allmas777, не нужно. При запуске «process.exe» будет запущен в минимизированном виде, без активации окна. Т.е., Ваше неназванное полноэкранное приложение так и останется на переднем плане.

allmas777
18-08-2013, 19:32
Iska, спасибо) работает!
не подскажите еще напоследок как таким же тихим образом убить этот же процесс?
--- добавлено
нашел на этом же форуме
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "taskkill /IM process.exe", 0, False
еще раз спасибо!)

Iska
18-08-2013, 20:29
нашел на этом же форуме »
Можно и так. Только имейте в виду: не «тот же процесс», а «все процессы с указанным именем». Побочный положительный эффект — если процесс имеет главное окно и обрабатывает «WM_CLOSE» — будет «мягкое», не принудительное завершение процесса.




© OSzone.net 2001-2012