2010-08-25 8 views
5

Jest kilka takich pytań, ale moja sytuacja wydaje się nieco inna. Mam bardzo prosty kod:Maszyna docelowa Aktywnie odrzucone połączenie

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

Jednak pojawia się błąd "Nie można nawiązać połączenia, ponieważ komputer docelowy aktywnie odrzucił połączenie." Jednak widzę również ten problem z połączeniami do strony dowolnej strony internetowej. Pojawia się tylko w aplikacjach .NET, nagle żaden z nich nie może uzyskać dostępu do sieci. Jakieś pomysły?

+0

Czy przypadkowo powiadomiłeś aplikację .NET o korzystaniu z serwera proxy, więc nic nie słychać tego portu? –

+0

Sprawdź, czy uruchomiłeś usługę sieciową. – Sandeep

Odpowiedz

0

Użytkownik, którego kod jest uruchomiony, jest istotny. Na przykład kod może działać w aplikacji konsola/WinForm, ale nie w aplikacji ASP.NET.

1

Dla celów kontroli poczytalności, lubię używać PowerShell do wywoływania api, więc proponuję, jeśli potrafisz.

Pamiętaj też, aby wypróbować ten URL w IE w systemie, aby upewnić się, że nic dziwnego się nie dzieje (wymuszone proxy, witryna jest naprawdę pusta, DNS lub plik hosts rozwiązuje ją w inny sposób, itd.).

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

Spróbuj przejść do witryny za pomocą przeglądarki Internet Explorer. Problem polega na tym, że WebClient używa ustawień proxy z IE. I są złe ustawienia proxy, dzięki którym otrzymasz wiadomość.

+0

Hmm, to też nie wyjdzie z IE. Mój problem zmienił się teraz w problem z IE. –