Войти

Показать полную графическую версию : Не работает скрипт-рестартер в Win2003SP2 x64


Anitalink
22-05-2010, 18:29
Доброго времени суток.
Назрел вопрос, правда, судя по тому, что до сих пор не нашёл ответа, вряд ли кто-то с этим сталкивался, но всё же:
Была установлена операционная система Windows 2003 SP2 32 разряда.
Использовался следующий скрипт для рестарта игрового сервера при краше:
@echo off cls echo Protecting srcds from crashes...
title CSS Watchdog :srcds echo (%time%) srcds started.
start /wait srcdsCSS.exe -console -game cstrike +port 27016 +map cs_assault +maxplayers 32 +clientport 26052 +tv_port 27141
echo (%time%) WARNING: srcds closed or crashed, restarting....
goto srcds
Всё было замечательно, приложение при краше заново запускалось.
Позднее, увеличив объём оперативы, поставил Windows 2003 SP2 X64... И тут начинается самое интересное:
Если запущен активный рабочий стол, где отображается окно данного приложения, рестартер работает. Но если удалённый рабочий стол не используется, приложение не перезапускается до тех пор, пока не откроешь удалённый рабочий стол снова.
В 32х рестартер работал в любом случае: и когда находишься на активном рабочем столе и когда таковой не используется.
В реестре никаких изменений не делал, всё было установлено на одной машине и, ради интереса, проверялось на другой - результат тот же: на 32х работает, на 64х - нет.
Если кто-то всё же сталкивался с этим или знает, как решить проблему, пожалуйста, отпишитесь. Буду очень признателен.

amel27
22-05-2010, 20:38
как вариант, попробуйте запуск скрипта из 32-бит консоли: "C:\Windows\SysWoW64\CMD.EXE"

P.S. как-то странно у вас запостился код - в таком виде он нерабочий (некоторые строки слились в одну)

Anitalink
22-05-2010, 21:44
Цитировать »
Извиняюсь за ламерский вопрос, но нельзя ли про подвязку поподробнее?
Я создавал обычный батник, какие параметры нужно указать?

amel27
23-05-2010, 05:46
Anitalink, при прямом запуске батника через Explorer запускается 64-битный CMD.EXE, для запуска 32-битного можно запускать батник из 32-битной оболочки (FAR, Total Commander и т.п.), либо явно: Пуск / Выполнить:
C:\Windows\SysWoW64\CMD.EXE "путь к батнику"

P.S. соответственно, если раньше запускали 32-бит, попробуйте наоборот - запуск 64-бит интерпретатора

Anitalink
24-05-2010, 14:09
Спасибо, как появится время - опробую :)

Anitalink
01-06-2010, 21:59
Столкнулся с неменее интересной проблемой:
надо прогу, которая будет жмакать "ок" на всплывающем окне
но при этом она должна работать даже в том случае, если рабочий стол неактивен

zonderz
02-06-2010, 00:42
надо прогу, которая будет жмакать "ок" на всплывающем окне »

проще всего - AutoIt

Anitalink
02-06-2010, 13:38
Спасибо, опробуем :)

QRS
06-06-2010, 19:53
Я бы предложил попробовать powershell и пробовать перечисление процессов (Get-Process)... если процесса нет - запускаем под определенной учеткой.
Этот скрипт можно поставить в планировщик и тогда даже логиниться не нужно после перезагрузки сервера - все автоматом запустится.

Anitalink
26-06-2010, 03:02
Спасибо, опробуем :)




© OSzone.net 2001-2012