Целевая машина активно отказалась от соединения - PullRequest
5 голосов
/ 26 августа 2010

Есть несколько таких вопросов, но моя ситуация кажется немного другой. У меня очень простой код:

WebClient client = new WebClient();
client.DownloadFile("http://www.xkcd.com", "xkcd.html");

Однако я получаю сообщение об ошибке «Невозможно установить соединение, поскольку целевой компьютер активно отклонил соединение» Тем не менее, я также вижу эту проблему с подключениями к любому веб-сайту. Это также появляется только в приложениях .NET, внезапно, ни одно из них не может получить доступ к сети. Есть идеи?

Ответы [ 3 ]

1 голос
/ 26 августа 2010

В целях проверки работоспособности мне нравится использовать PowerShell для вызова API, поэтому я рекомендую, если вы можете.

Кроме того, обязательно попробуйте этот URL в IE в системе, чтобы простоубедитесь, что в этом нет ничего странного (принудительный прокси, сайт действительно не работает, DNS или файл hosts разрешает его для чего-то другого и т. д.).

C:\Users\james » $wc = new-object system.net.webclient
C:\Users\james » $wc.DownloadFile("http://www.xkcd.com", "xkcd.html")
C:\Users\james » dir .\xkcd.html


    Directory: Microsoft.PowerShell.Core\FileSystem::C:\Users\james


Mode           LastWriteTime       Length Name
----           -------------       ------ ----
-a---     8/26/2010  1:08 AM         7454 xkcd.html
0 голосов
/ 26 августа 2010

Попробуйте зайти на сайт с помощью браузера Internet Explorer.Проблема в том, что WebClient использует настройки прокси из IE.И при любых неправильных настройках прокси вы получите полученное сообщение.

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

Пользователь, для которого выполняется ваш код, является релевантным.Например, код может работать в приложении консоли / WinForms, но не в приложении ASP.NET.

...