Как предотвратить появление диалоговых окон «Пожалуйста, сообщите Microsoft об этой проблеме» - PullRequest
3 голосов
/ 10 сентября 2008

У нас есть ошибка, которую мы не можем найти, и у нас нет необходимости / ресурсов, чтобы попытаться ее отследить. Что нам нужно сделать, так это просто не допустить беспорядочных диалоговых окон «Пожалуйста, сообщите Microsoft об этой проблеме» на сервере.

Это из-за ошибки MS-Access (мы думаем), но я не могу найти, где установлен Access (я так не думаю); на любом из дисков нет каталога MS Office.

Если бы мы могли просто остановить появление диалоговых окон, было бы замечательно.

Спасибо.

Спецификация: Window Server 2003 sp2

Ответы [ 7 ]

8 голосов
/ 10 сентября 2008

Я не думаю, что вы понимаете, просто насколько серьезна эта ошибка может быть. Эти ошибки появляются в жестких условиях, таких как переполнение буфера, разыменование нулевого указателя, ошибки деления на ноль и т. Д. Учитывая то, что вы упомянули, что это выполняется на сервере, вы потенциально (в зависимости от вашей ситуации) имеете доступ к сети, легко эксплуатируемая программа !

Как и другие предлагали, вы можете отключить общесистемную систему отчетов об ошибках или использовать API SetErrorMode , чтобы отключить его только для вашего приложения, но опять же Я настоятельно советую исследовать и исправить проблему в корне !

8 голосов
/ 10 сентября 2008

С http://www.codeproject.com/KB/exception/UnhandledExceptionClass.aspx:

Если вы также хотите отключить диалоговое окно «Отправить отчет об ошибках» на своем компьютере, щелкните правой кнопкой мыши значок «Мой компьютер», выберите «Свойства», перейдите на вкладку «Дополнительно» и нажмите Отчет об ошибках ». В диалоговом окне «Параметры» установите переключатель «Отключить отчеты об ошибках»:
image

Сравните также http://www.codeproject.com/KB/exception/ExceptionHandling.aspx для общей .NET Обработки исключений.

4 голосов
/ 10 сентября 2008

Ну, я бы попытался выяснить, какое приложение использует Access. Непонимание того, что работает, является реальной проблемой, особенно когда у него есть необработанные исключения!

Насколько просто отключить? Попробуйте:

Щелкните правой кнопкой мыши «Мой компьютер»

щелкните левой кнопкой мыши «Свойства»

щелкните левой кнопкой мыши на вкладке «Дополнительно»

щелкните левой кнопкой мыши на «Отчеты об ошибках» (внизу)

щелкните левой кнопкой мыши «Отключить отчеты об ошибках»

2 голосов
/ 10 сентября 2008

Поскольку я вижу, как три разных человека разместили инструкции о том, как отключить диалог на их собственной машине, я опубликую это снова как ответ, а не просто комментарий:

Они не хотят делать это на машинах своих клиентов, потому что это отключит любое приложение от использования этого диалогового окна. Они просто хотят предотвратить его появление для их приложения.

2 голосов
/ 10 сентября 2008

Это называется диалогом отчетов об ошибках Windows. Вы можете отключить его, следуя этим инструкциям:

http://www.windowsnetworking.com/articles_tutorials/Disable-Error-Reporting-Windows-XP-Server-2003.html

Однако меня беспокоит, почему вы получаете эти сообщения об ошибках. Вы просто скрываете проблему, которая может быть очень плохой.

1 голос
/ 25 ноября 2009

Это ничего не скрывает, если программа аварийно завершит работу, Windows все равно скажет вам. Разница в том, что он не скомпилирует дамп ядра и не попытается отправить его в Microsoft для вас. Очень полезно отключить этот мусор.

0 голосов
/ 04 августа 2010

При работе в .net вы можете перехватить все необработанные исключения (именно это и является причиной этого сообщения). Но я не знаю, как сделать то же самое в Access.

http://devcity.net/Articles/60/1/unhandled_exceptions.aspx

...