Ошибка времени выполнения - (фото) - PullRequest
0 голосов
/ 30 сентября 2011

Я недавно тестировал свое приложение на сервере C ++, и когда несколько клиентов подключились и делали разные вещи, я получал странную ошибку времени выполнения, которая приводит к сбою сервера.Не могли бы вы мне помочь - как мне отладить следующую ошибку, когда все, что у меня есть, это журналы просмотра событий:

Event Viewer Results

Тип ошибки: «Сервер C ++ перестал отвечать»,только с возможностью закрыть диалоговое окно.Я даже не мог видеть консоль.

Пожалуйста, дайте мне знать, если есть какая-либо другая информация, которую я могу предоставить.

Спасибо.

Ответы [ 2 ]

1 голос
/ 30 сентября 2011

Настройте WER (отчеты об ошибках Windows) на сервере для сохранения аварийных дампов аварийных приложений на диск.Затем загрузите и проверьте их в WinDbg.Не забудьте установить файл символов приложения (.pdb) в отладчике, чтобы увидеть стеки и переменные.

1 голос
/ 30 сентября 2011

Я бы порекомендовал вам два курса действий:

1) Добавьте достаточное количество журналов (в файл или стандартный вывод), чтобы вы могли отследить, откуда возникла проблема.

2) Запустите ваш сервер в отладчике, чтобы вы могли точно определить местоположение и тип ошибки. Это даст вам стек вызовов и индексирует ваши исходные файлы, если настроено правильно

Я могу порекомендовать WinDbg в качестве автономного отладчика для этой задачи, хотя я предполагаю, что вы используете IDE с возможностью отладки.

Если по какой-либо причине вы не можете запустить сервер в отладчике, то вы можете хотя бы подключить его при возникновении ошибки. Таким образом, вместо того, чтобы д-р Уотсон давал вам информацию, WinDbg может присоединиться к процессу, давая вам стек вызовов и все остальное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...