Discord 啓動出現「Update failed」更新失敗解法(附卡巴斯基防毒軟體適用方案)

這禮拜不知道是 Windows 更新之後還是什麼時候開始,啓動 Discord 後在檢查更新階段就會進入無限 Update failed 的倒數重試地獄,

因為電腦上有安裝 Discord 和 Discord PTB 兩個版本,本來只有 PTB 遇到這個問題,想說是登小號用的沒差,就沒特別去關注,

一直到昨天電腦重新開機後,開啓原版 Discord 時也遇到一模一樣的問題,逼不得已只好走上這個偵錯之路...

檢查網路

首先我先確定其他軟體中需要連線網路的功能都是沒有問題的,接著進入 Discord 網頁版 [1] 測試,也沒有遇到任何問題,

再來嘗試在 Mac 上連上相同的網路環境後,執行 Discord,結果也能正常完成更新檢查並成功啓動,

最後試著將網路設定使用 Google Public DNS [2] 之後,問題也沒有解決,因此就先排除掉了網路因素。

[1] Discord 網頁版

[2] 適用於裝置的 Google 公用 DNS

 

檢查客戶端完整性

有時候程式很有可能是缺少某些必要元件或檔案損壞,導致無法如預期執行。

這種情況可以先使出解決問題的不二法門 -- 重開機,不過發現沒有任何幫助,所以轉而至 Discord 官網中下載安裝檔,嘗試重新安裝客戶端,但也絲毫沒有起色,所以也能排除是客戶端引發的問題。

 

檢查錯誤日誌

開啓 Discord 安裝資料夾「%LocalAppData%\Discord」後可以看到「Discord_updater_rCURRENT.log」這個檔案,是 Discord 更新程式 Update.exe 執行階段產出的日誌檔。

翻找了一下內容果然看到包含堆疊的錯誤訊息:

[2023-05-05 01:14:42.435376 +08:00] INFO [updater_client]: Starting updater main thread. Application root: "C:\\Users\\**\\AppData\\Local\\Discord"
[2023-05-05 01:14:42.650972 +08:00] INFO [updater_client]: Updater received command 0: UpdateToLatest { options: Some(UpdateOptions { skip_host_delta: false, skip_module_delta: {} }) }
[2023-05-05 01:14:42.651091 +08:00] INFO [updater_client::install]: Starting update to latest.
[2023-05-05 01:14:42.651261 +08:00] INFO [updater_client::db]: Opening installer database (exclusive: true, caller: update_to_latest).
[2023-05-05 01:14:42.651961 +08:00] INFO [updater_client::db]: Opened installer database (exclusive: true, caller: update_to_latest).
[2023-05-05 01:14:42.873231 +08:00] INFO [updater_client::db]: Set install_id Some("95389eb9-****-****-****-05c5ec7df360")
[2023-05-05 01:14:42.873271 +08:00] INFO [updater_client::install]: Requesting manifest for HostIdentifier { name: APP, release_channel: STABLE, platform: WIN, arch: X86 }, from "https://updates.discord.com/"
[2023-05-05 01:14:42.905482 +08:00] INFO [updater_client::db]: Dropping database reference (exclusive: true, caller: "update_to_latest", strong count: 1)
[2023-05-05 01:14:42.909452 +08:00] ERROR [updater_client]: Failed 0: Other(Reqwest(reqwest::Error { kind: Request, url: Url { scheme: "https", cannot_be_a_base: false, username: "", password: None, host: Some(Domain("updates.discord.com")), port: None, path: "/distributions/app/manifests/latest", query: Some("install_id=95389eb9-****-****-****-05c5ec7df360&channel=stable&platform=win&arch=x86"), fragment: None }, source: hyper::Error(Connect, Os { code: 10054, kind: ConnectionReset, message: "遠端主機已強制關閉一個現存的連線。" }) }))

很明顯的可以看到是在向更新伺服器請求更新資訊的時候出現 Connection Reset 的錯誤了,不過我試著把整串路徑組合起來:

https://updates.discord.com/distributions/app/manifests/latest?install_id=e232e945-****-****-****-7feef0af065c&channel=stable&platform=win&arch=x86

在瀏覽器前往這個網址,其實是可以正常存取內容的:

所以很明顯是 Discord 的 PC 客戶端受到境外勢力干擾,導致沒辦法正常發出連線請求。

 

檢查電腦安全防護機制

既然得知有可能是受到第三方影響,那最有可能的原因不外乎就是電腦中的使用防毒軟體或是防火牆,

於是我先嘗試將 [設定] > [隱私權與安全性] > [Windows 安全性] > [防火牆與網路保護] 中的防火牆開關先全數關閉:

接著將我的防毒軟體卡巴斯基也先暫停:

然後再重新執行 Discord,同樣沒有效果,依然更新失敗。

Discord 官方有建議 [3] 關閉防毒軟體之後可以再嘗試重新安裝客戶端,不過這個方法也沒有派上用場。

[3] AV Errors When Updating

 

嘗試進入安全模式

既然都多方面檢查過了也無法解決問題,只能換個方向嘗試了,就是讓電腦開機時進入最乾淨的狀態,也就是使用安全模式,

進入安全模式的步驟就不另外提及了,可以參考 Microsoft 官方支援指南 [4],我選擇的選項為「啓用安全模式(含網路功能)」,

進入後執行 Discord 測試,發現竟然可以成功完成更新程序並正常開啓,所以必然是有某個程式影響了 Discord 連線更新伺服器。

[4] 在 Windows 中以安全模式啟動電腦

 

揪出始作俑者

基本上會影響程式連線能力的軟體不外乎就是防毒軟體、VPN 或代理伺服器(Proxy Server),後兩者我能確定在開機之後都不會自動執行,

所以回到正常模式開機後,我就實測直接將卡巴斯基整個結束(不再以暫停模式測試),沒想到關閉後 Discord 立刻恢復正常運作...

 

但我不能就此罷手,因為關閉防毒軟體並不是正確的解決方案,應該設法要讓兩者能和平共存,既然知道是卡巴斯基的鍋,自然就有了關鍵字可以 Google,

最終爬到了卡巴斯基論壇中的討論串 [5],有用戶也遇到了和我一樣的卡巴斯基造成 Discord 更新失敗問題,官方在此也提供了解決方案:

1. 確認檔案總管中勾選了顯示 [隱藏的項目] [6]

2. 開啓卡巴斯基主界面,點擊左下角的 [⚙] 設定 > 一般,在「自我防護」區塊中取消勾選 [啓用自我防護] 後點擊 [儲存] > [是]。

3. 關閉卡巴斯基程式,不是關閉視窗,而是在系統右下角圖示中找到卡巴斯基盾牌標誌後點擊右鍵 > [結束]。

4. 在檔案總管的網址列輸入「C:\ProgramData\Kaspersky Lab\AVP21.3\Report\」後按 Enter 進入,刪除資料夾內所有的內容。

5. 重新啓動卡巴斯基防毒軟體(於「開始」中搜尋名稱執行即可)。

6. 按照「2.」的步驟進入「自我防護」區塊,重新勾選 [啓用自我防護] 並儲存。

7. 將電腦關機後重新開啓電腦,注意是使用「關機」而不是「重新啓動」選項。

8. 啓動 Discord 測試是否恢復正常執行。

 

執行完以上的步驟後,果然順利修復了這個問題,Discord 一切功能恢復正常運作,只能說卡巴斯基類似的鍋真的層出不窮,

尤記十年前(突然發現有點久)泡泡大亂鬥的更新程式也是因為卡巴斯基而無法正常運作,那時候也是測試很久才找到原因。

[5] Discord does not open when Kaspersky is ON

[6] 在 Windows 中檢視隱藏的檔案和資料夾

 

雖然整篇文分享的重點是讓碰到類似狀況的卡巴斯基用戶可以快速排除異常,但文內也保留各項常見的除錯步驟供大家參考,或許不同的狀況也都適用相同的解決方案,不妨嘗試看看。

想隨時追蹤最新資訊?歡迎使用 RSS 訂閱最新文章 »

您或許會感興趣的文章

隨機推薦

共有 4 則迴響

  1. #1 @

    使用您的方法修復DC的錯誤了
    謝謝

  2. DanielChouS

    #2 @

    感謝您,除錯除了好幾天,終於找到正確問題了(還好沒有走到重灌那一步)。

  3. TimJ

    #3 @

    大感謝....我出問題的時間跟樓上Daniel兄差不多....也用您的方法解掉了!!!!!
    :heart_eyes: :heart_eyes: :heart_eyes:

  4. #4 @

    感謝
    之前好像也有一次更新失敗也忘了怎麼搞好的
    這次的問題跟您這個一樣
    依照您的方法做就可以了 感謝

發表迴響

*