try
{
WebRequest request = WebRequest.Create("http://facebook.com");
HttpWebResponse response = (HttpWebResponse) request.GetResponse();
MessageBox.Show("I am here!"); // Not run
}
catch (Exception ex)
{
MessageBox.Show("Error Occurred!"); //Not run!
}
В моей стране facebook фильтруется и, когда я запускаю этот код, исключений не будет, кроме того, программа не отображает сообщение «Я здесь!»; Что случилось?Исключение не выбрано
Я хочу использовать этот код в timer_tick каждые 1 минуту и обновлять ярлык ui с живым статусом. есть ли у вас альтернативный путь?
Что вы подразумеваете под «фильтром»? Что вы видите, если вы вводите URL-адрес в браузер? – Krumelur
Должно быть вызвано одно из MessageBox.Show(), поэтому, похоже, они не выполняют то, что вы ожидаете от них. Можете ли вы поставить точку останова на них обоих, чтобы увидеть, что называется? В зависимости от того, как выполняется фильтрация, возможно, что исключение не будет выбрано, даже если вы не можете получить доступ к веб-сайту. – LittleDebugger
Что заставляет вас думать, что он должен * выкинуть исключение? Просто потому, что сайт заблокирован, это не означает, что весь запрос завершается с ошибкой. Вероятно, запрос перенаправляется на «заблокированную» страницу, и/или код HTTPStatus не 200 – Rob