![]() |
Мониторинг игрового процесса
Всем привет!
Помогите пожалуйста написать bat скрипт, который будет мониторить процесс игрушки Napoleon.exe, находиться он по пути D:\Napoleon Total War\ При этом, если процесс живой, то формировать текстовый файл с реальным временем, в котором будет например циферка 1, если процесса нет, то 0 Очень хочу понять, когда ребенок запускал игру :))) Заранее благодарю за помощь) |
Андрейwik, проще выставить журналирование для указанного экзешника: не придётся изобретать колесо сызнова. Также с помощью системных апплетов можно ограничить время на работу того или иного приложения.
|
greg zakharov, через систему конечно проще, но хотелось бы попробовать именно скрипт :) а то я профан в этом
|
Андрейwik, во-первых, сценарии (в частности бати) предназначены для других целей, как правило автоматизации, а системные оснастки - как раз для управления системой; во-вторых, извращаться с мониторингом процесса через батю всю равно не получится просто так, ибо придётся задействовать планировщик. Последний является частью "экосистемы" тех же оснасток винды. Так вот вопрос: для чего подпирать костылём здоровую ногу? Мало йода?
|
greg zakharov, так я и хочу этот скрипт поставить в планировщик. Мне вот даже самому интересно как это будет работать. По этому и прошу помощи )
|
Цитата:
|
greg zakharov, это будет некой автоматизацией, чтоб уками ни куда не лазить. А так можно просто открыть папку с логами и посмотреть когда программа была запущена, а когда нет. Может быть это и костыль, но мне кажется этот скрипт будет крутой штукой конкретно для меня. Если вам не сложно, могли бы Вы мне его предоставить?
|
Цитата:
во-вторых проблема так не решается вот, например код, мониторит каждые 5 сек на появление процесса "Calculator.exe" и в случае успеха запишет время в файл рядом с собой и закроется Код:
@echo off но: во-первых этот код должен работать всегда и у него есть видимое окно и у вас вероятно пойдут новые вопросы, как сделать чтобы окна не было видно (а это достигается только с помощью других языков или утилит) как записывать в файл чтобы не увидеть это во-вторых при запущенной игре (в большинстве своем) многие процессы отрубаются для разгрузки процессора и этот может оказаться в их числе или не успеет записать в течении 5 сек, можно поставить и одну, но это уже нагрузка на процессор принудительная и будете делать выбор что более жалко - ребенок в игру поиграет или процессор сгорит. И это еще не все проблемы, там может дело и антивирусника коснуться и автозагрузки и прав ... |
Я нашел у вас на форуме скрипт запущенного процесса блокнота, но я не понимаю. Как его реализовать под мой запрос!? (проверка запущенной игры на диске D:\ и формирование файла- если работает то 1, если нет то 0)
@Echo Off SetLocal EnableExtensions Set ProcessName=notepad.exe TaskList /FI "ImageName EQ %ProcessName%" | Find /I "%ProcessName%" If %ErrorLevel% NEQ 0 Start %windir%\%ProcessName% Present = False For Each Process In Processes Present = (UCase(Process.Name) = UCase(Exe)) ' MsgBox Process.Name + vbCrLf + Exe Next Set WS = CreateObject("WScript.Shell") If Not Present Then WS.Exec PathExe + "\" + Exe End If End If |
Цитата:
|
Андрейwik, если игра запущена, что у вас выводит команда
Код:
powershell -command "get-process |? path -Match 'Napoleon'" |
Сегодня прямо День мониторинга избранного процесса. «Это просто праздник какой-то!»™ :).
P.S. А что — может заведём по такому случаю :lol:? |
Отличная мысль!
|
Время: 22:55. |
Время: 22:55.
© OSzone.net 2001-