簡體   English   中英

C#中System.Net的Webclient無法連接到服務器

[英]System.Net's Webclient in C# won't connect to server

為了使System.Net與Microsoft Visual C#2008 Express Edition一起使用,我需要做些什么? 我似乎根本無法獲得任何Web類型的控件或類來工作。.下面的WebClient示例始終拋出異常“ 無法連接到遠程服務器 ”。因此,我無法加載WebBrowser控件一頁。

這是代碼(已編輯):

using System;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Net;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            using (WebClient client = new WebClient()) {
                string s = client.DownloadString("http://www.google.com");
                this.textBox1.Text = s;
            }
        }
    }
}

這是一種簡單形式,其中僅包含一個文本框控件(多行設置為true)。 DownloadString(...)行上引發異常。 我也嘗試使用WebRequest ..同樣的異常!

編輯:

我已連接到直接連接到電纜調制解調器的Linksys WRT54G路由器。 我沒有運行代理服務器,盡管我確實運行proxycfg -u並得到了:

Updated proxy settings
Current WinHTTP proxy settings under:
  HKEY_LOCAL_MACHINE\
    SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Connections\
      WinHttpSettings :

 Direct access (no proxy server).

我正在使用Windows XP,但沒有運行任何類型的防火牆。 目前只有AVG。 我很確定我不必轉發任何端口或任何東西,但是我確實嘗試過將端口80轉發到路由器上的工作站。 沒有幫助。

更新 -我的意思是proxycfg ,不是httpcfgproxycfg -u將執行導入)

首先,這里的“表達”沒有什么特別的。 其次,contoso是偽URL。

您在什么操作系統上? 而且您要通過代理服務器嗎? 如果是這樣,則可能需要配置操作系統的http堆棧proxycfg將在XP上完成此工作,並可用於導入用戶的IE設置。

該示例很好,盡管它不能正確處理多個IDisposable對象-以下更為簡單:

        using (WebClient client = new WebClient()) {
            string s = client.DownloadString("http://www.google.com");
            // do something with s
        }

您的PC上是否有任何可能會影響它的防火牆軟件? 您是否嘗試過Google以外的任何其他網站?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM