Целевая машина активно отказывается от подключения

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

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

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


person Drew DeVault    schedule 25.08.2010    source источник
comment
Вы случайно сказали своему приложению .NET использовать прокси-сервер, чтобы ничто не прослушивало этот порт?   -  person James Black    schedule 26.08.2010
comment
Проверьте, запустили ли вы веб-сервис.   -  person Sandeep    schedule 26.08.2010


Ответы (3)


В целях проверки работоспособности мне нравится использовать 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
person James Manning    schedule 26.08.2010

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

person Jerome    schedule 26.08.2010

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

person Vasyl Boroviak    schedule 26.08.2010
comment
Хм, из IE тоже не пойдет. Итак, моя проблема теперь превратилась в проблему IE. - person Drew DeVault; 27.08.2010