Windows
BITS http 下載作業無法連接所有者本地系統帳戶
我編寫的一項使用BITS(後台智能傳輸服務)自動更新自身的服務在某些機器(到目前為止是 Windows 7)上存在問題。
我一直在調查,發現我的服務添加到比特隊列的一些作業立即失敗,錯誤程式碼為 0x80072efd(無法建立與此伺服器的連接)。連接到伺服器進行下載沒有問題,因為它可以在使用 IE(或任何其他 Web 瀏覽器)的同一台機器上正常工作,並且其他客戶端可以從同一台伺服器連接和更新。
我嘗試使用 BITSADMIN.exe 工具手動添加作業,它們工作正常。然後,我將執行我的服務的帳戶更改為網路服務帳戶,以便將使用不同的所有者創建位作業並且作業成功完成。
我的問題是我不想以這個帳戶執行我的服務,因為它沒有所需的本地權限,所以如何更改本地系統使用者的權限以允許它從 HTTP 源下載,我不是知道對此帳戶有任何限制,但顯然是這樣。
我發現了問題所在,
我的錯誤是認為 BITS 使用了 IE 中定義的相同代理設置,但它有自己的服務帳戶設置,只能使用 BITSAdmin 工具更改。
當我最初執行它時,它顯示了一些無效的代理設置
C:\Windows\System32>bitsadmin /util /getieproxy localsystem
所以我然後執行它來清除代理設置。
C:\Windows\System32>bitsadmin /util /setieproxy localsystem NO_PROXY BITSADMIN version 3.0 [ 7.5.7601 ] BITS administration utility. (C) Copyright 2000-2006 Microsoft Corp. BITSAdmin is deprecated and is not guaranteed to be available in future versions of Windows. Administrative tools for the BITS service are now provided by BITS PowerShell cmdlets. Internet proxy settings for account localsystem set to NO_PROXY. (connection = default) C:\Windows\System32>
最後,我重新啟動了 BITS,作業開始下載並順利完成。