您目前已離線,請等候您的網際網路重新連線

Wininet 限制每個伺服器的連線

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:183110
依現狀不再更新的知識庫內容免責聲明
本文旨在說明 Microsoft 不再提供支援的產品。因此,本文係依「現狀」提供,不會再更新。
結論
Wininet 限制對單一的 HTTP 伺服器的同時連線數目。如果您超過此限制,要求會封鎖,直到其中一個目前的連線已完成為止。這是經過設計的也是相以 HTTP 規格與業界標準。
其他相關資訊
Wininet 限制到四個同時連線的單一 HTTP 1.0 伺服器的連線。連線至單一的 HTTP 1.1 伺服器受限於兩個同時連線。HTTP 1.1 規格 (RFC2616) 要求兩個連線限制。HTTP 1.0 的四個連線的限制是與許多受歡迎的網頁瀏覽器所使用的標準相合的 self-imposed 的限制。

這項限制您的應用程式的唯一辨識項是例如 HttpSendRequestInternetOpenURL 會花較長的時間完成,因為它們等候先前的連線清傳送其要求之前,呼叫。

您可以設定 Wininet 超過此限制,藉由建立並設定下列登錄項目:

附註藉由變更這些設定,造成 Wininet 移對 HTTP 通訊協定規格建議。您應該只做這絕對必要時,然後您應該避免進行標準網頁瀏覽這些設定在作用中時:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings


MaxConnectionsPerServer REG_DWORD
(預設值 2)
設定到單一的 HTTP 1.1 伺服器的同時要求數目

MaxConnectionsPer1_0Server REG_DWORD
(預設值 4)
設定到單一的 HTTP 1.0 伺服器的同時要求數目
這些設定為特定使用者做,並將對其他登入電腦的使用者並不會影響。

在 Internet Explorer 5 是可能藉由呼叫 InternetSetOption 函式上 NULL 控制代碼與下列旗標 (請注意它將會變更整個程序的連線限制),以程式設計方式變更連線限制:
INTERNET_OPTION_MAX_CONNS_PER_SERVER INTERNET_OPTION_MAX_CONNS_PER_1_0_SERVER
附註如果處理程序已建立一個伺服器的連線,如果您藉由呼叫 InternetSetOption 變更連線限制,函式沒有任何效果後續連線到相同伺服器上。如果即使先前的連線中斷之前給 InternetSetOption 來呼叫,就會發生這個問題。連線限制,並會影響所有其他伺服器。
多個執行個體

警告:本文為自動翻譯

內容

文章識別碼:183110 - 最後檢閱時間:10/26/2007 15:50:13 - 修訂: 4.2

Microsoft Internet Explorer (Programming) 6.0, Microsoft Internet Explorer 5.5, Microsoft Internet Explorer 5.0, Microsoft Internet Explorer 4.01 Service Pack 2, Microsoft Internet Explorer 4.0 128-Bit Edition, Microsoft Windows Internet Services (WinInet)

  • kbmt kbproductlink kbinfo KB183110 KbMtzh
意見反應