Отслеживание перезапуска системы

Я написал службу Windows, которая является частью программного обеспечения, я развернул службу на Windows Server 2003 и 2008, клиент связался со мной и пожаловался, что когда они перезапускали свои серверы, они продолжали перезапускаться, и это произошло на двух машинах с двумя разными клиентами, перезапуск серверов с последней хорошей конфигурацией сработал, и серверы работают, я подключился к одному из серверов и запустил монитор процессов, я включил ведение журнала загрузки, затем снова установил свою службу, проблема появилась снова, загрузка системы с последней хорошей конфигурацией сработала , посмотрев журнал загрузки показал, что служба работает правильно и ничего странного, я решил установить виртуальную машину и попробовать повторить действие, когда я это сделал, я обнаружил, что виртуальная машина, доходит до диспетчера входа в систему, затем через несколько секунд он перезагружается, и так продолжается до тех пор, пока я не загружу машину в последней удачной конфигурации, нет возможности войти в систему и запустить монитор процесса, есть предложения, как отследить эту проблему? любой из инструментов sysinternals может помочь?

Заранее спасибо,


person Ahmad J. Hamad    schedule 27.06.2011    source источник


Ответы (1)


Другие могли бы предложить некоторые хорошие инструменты, но если все терпит неудачу, вы можете написать функцию в своей службе, которая добавляет строковый параметр к некоторому текстовому файлу, а затем вызывает эту функцию с возрастающим числом после каждой (или каждой n-й) строки кода запуска службы tge. Затем повторите свои тесты. После перезагрузки проверьте файл, и он точно скажет вам, какая строка вызвала перезагрузку компьютера. Вы можете проверить код, чтобы найти причину, или опубликовать оскорбительный код здесь, и люди могут помочь вам лучше.

person devsh    schedule 27.06.2011
comment
да, я понимаю, что вы говорите, но моя служба успешно завершает работу, и процесс загрузки продолжается, моя служба пытается подключиться к какому-то серверу сокетов при запуске, и это терпит неудачу, и на основе этого она очищается и выходит, и я могу видеть все что происходит. так что не сомневайтесь в сервисе. - person Ahmad J. Hamad; 27.06.2011
comment
Не глядя на журнал загрузки или код, трудно сказать, но вот другие вещи, которые вы можете попробовать: 1) зайдите в свойства службы и убедитесь, что она не настроена на перезагрузку компьютера при первом сбое 2) проверьте журнал загрузки с отключенной службой, а затем с включенной службой для любых различий 3) измените службу на ручной запуск с автоматического запуска, а затем попробуйте запустить ее вручную после загрузки компьютера, чтобы увидеть, есть ли какие-либо подсказки с точки зрения сообщения об ошибке или log 4) Если все терпит неудачу, вы можете прокомментировать большую часть кода, а затем постепенно раскомментировать код, пока не возникнет проблема. - person devsh; 27.06.2011
comment
Спасибо, devsh, да, я понял, но, как я уже сказал, я запустил монитор процессов, моя служба запускается и пытается подключиться к серверу сокетов, а затем успешно завершает работу, нет ничего, связанного с кодом службы, который перезапускает серверы, я продолжал отслеживать действия в мониторе процессов, но ничего не кажется необычным, вход в систему Windows появляется на несколько секунд, затем он перезапускается, нет возможности войти в систему и запустить монитор процессов, но я ищу способ удаленно подключить что-то вроде монитора процессов в течение нескольких секунд, однако, если что-то не так, это должно появиться в средстве просмотра событий - person Ahmad J. Hamad; 28.06.2011