如何修正常見 User32.dll 檔案錯誤

文章翻譯 文章翻譯
文章編號: 142676 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

簡介

當您嘗試在電腦上使用的程式時,您會收到錯誤,該 User32.dll 檔案包含於它的說明。幾個原因,可能會發生這個問題。這份文件包含一般的逐步方法,可用來嘗試解決這個問題。在這份文件中的逐步程序將不會很多時間才能完成。

本內容是為電腦初學者所設計的。

什麼是 User32.dll 檔案?

Windows 將圖形元件,如對話方塊和視窗的指令與儲存 User32.dll 檔案中。User32.dll 檔案是必要的 Windows 作業。如果這個檔案已損毀、 刪除或移除,系統將無法再正常運作。如果程式或服務無法正確存取 User32.dll,程式或服務將無法正常運作。

正在修復 User32.dll 檔案,或重新安裝程式、 硬體元件或造成這項錯誤的驅動程式,則通常會修正 User32.dll 錯誤。如果這些程序無法解決 User32.dll 錯誤,您可以將電腦還原到條件之前利用 「 Windows 系統還原 」 功能會出現這個錯誤。

附註如果因為 User32.dll 錯誤,所以無法啟動 Windows,請參閱 "在安全模式啟動電腦並使用 「 系統還原 」 一節。

徵狀

錯誤訊息都 User32.dll 問題的最常見的徵狀。User32.dll 錯誤訊息會描述錯誤的來源,並指出該錯誤涉及 User32.dll 檔案。

以下是 「 User32.dll 」 錯誤訊息的範例:
程式 不合法的系統 DLL 重新定位

在這個範例中, 程式 是指一種程式,造成 User32.dll 錯誤訊息的名稱。

本文將告訴您 User32.dll 錯誤訊息的一些常見的原因。此外,本文還包含一些常見的解決方法。開頭第一種解決方法,而且如果您遇到這個問題持續發生,請移至下一個方法。

方法 1: 使用 Windows 更新,以取得有關 User32.dll 任何修正

您所遇到 User32.dll 問題可能會解決 Windows 產品更新。若要開啟 [Windows Update,請依照下列步驟執行:
  1. 按一下 啟動然後按一下 執行.
  2. 複製並貼上 (或打字) 中的下列命令 執行 方塊中,然後再按 ENTER 鍵:

    wupdmgr
我們建議您在執行 Windows 更新之後更新您的防毒軟體。 如需有關 Microsoft 支援的防毒軟體的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
49500防毒軟體供應商的清單

Microsoft Windows Update 網站

您也可以更新 Windows 藉由使用 Windows 更新網站。若要執行這項操作,請造訪下列 Microsoft Windows Update 網站:
http://update.microsoft.com
附註您也可以針對視窗、 Microsoft Office 和其他 Microsoft 應用程式,在 Microsoft 更新接收更新。Microsoft 更新所有的功能和優點 Windows Update 推出加上是包含 Office 其他 Microsoft 應用程式的下載。若要使用 Microsoft 更新,請造訪下列 Microsoft 網站:
http://update.microsoft.com/microsoftupdate

開啟 「 自動更新

若要讓 Windows 安裝重要更新可供使用時,請開啟自動更新。若要開啟在 Windows 中的自動更新,請依照下列步驟執行:
  • 在 Windows Vista 中:
    1. 按一下 啟動按一下 所有程式然後按一下 Windows 更新.
    2. 在 [瀏覽] 窗格中,按一下 變更設定.
    3. 選取您想要的選項。
    4. 在下 建議的更新按一下以選取 包含了建議的更新程式下載、 安裝或通知我有關更新時 核取方塊,然後再按一下 [確定].如果您接到提示輸入系統管理員密碼或確認的提示,請輸入密碼,或提供確認。
  • 如需有關如何排程 「 自動更新,Windows Server 2003 中,在 Windows XP 中,並在 Windows 2000 中的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
    327838如何排程 「 自動更新,Windows Server 2003 中,在 Windows XP 中,並在 Windows 2000 中

如果此方法有效

如果您嘗試執行導致 User32.dll 錯誤訊息,該任務並沒有出現錯誤訊息,便已完成!

如果這個方法無效

如果您嘗試執行導致 User32.dll 錯誤訊息,該任務,並不會隱藏錯誤訊息,移至下一個方法。

方法 2: 重新安裝程式、 硬體與驅動程式導致 User32.dll 錯誤

如果期間出現 User32.dll 的錯誤訊息,或在安裝程式、 硬體元件或驅動程式之後,解除安裝程式、 硬體元件或驅動程式。然後重新啟動 Windows,並重新安裝程式、 硬體元件或驅動程式。
  • 在 Windows Vista 中: 如需有關如何重新安裝程式、 硬體或驅動程式在 Windows Vista 中的資訊,請按一下 啟動按一下 說明及支援然後按一下 疑難排解.您也可以搜尋"解除安裝或變更程式,"為 「 安裝程式中,a 」 或 「 安裝新的硬體 」。
  • 在 Windows XP 中: 如需有關如何修復程式、 硬體或驅動程式在 Windows XP 中的資訊,請按一下 啟動按一下 說明及支援然後按一下 修正問題.您也可以搜尋"新增程式 」 或因 [使用新增硬體]。
如需有關如何修正問題與程式、 硬體,以及驅動程式的詳細資訊,請造訪下列 Microsoft 網站取得:
Windows Vista 解決方案中心
http://support.microsoft.com/ph/11732/en-us/
Windows XP 解決方案中心
http://support.microsoft.com/ph/1173/en-us/
Windows Server 2003 解決方案中心
http://support.microsoft.com/ph/3198
Windows 2000 解決方案中心
http://support.microsoft.com/ph/1131

手動更新驅動程式

您最好讓 Windows 自動安裝必要的硬體驅動程式。您應該避免手動更新驅動程式,除非 Windows 找不到驅動程式的其中一個裝置,而且您都能夠取得驅動程式的其他方法。或者,您可能必須手動更新驅動程式,如果技術支援人員要求您從光碟或裝置製造商的網站安裝驅動程式。如果您決定手動更新驅動程式,請依照下列步驟執行:
  1. 按一下 啟動時, 然後按一下 執行.
  2. 複製並貼上 (或打字) 中的下列命令 執行 方塊中,然後按 ENTER 鍵:

    devmgmt.msc
  3. 如果您接到提示輸入系統管理員密碼或確認的提示,請輸入密碼,或提供確認。
  4. 在 [裝置管理員] 中,找出您想要更新的裝置,然後再按兩下 [裝置名稱。
  5. 按一下 驅動程式 索引標籤上按一下 更新驅動程式然後依照指示進行。

判斷哪些程式正在使用 User32.dll

如果您不確定電腦上的哪一個程式正在使用 User32.dll,使用 [工作清單] 命令列工具來判斷目前正在使用 User32.dll 的程式。[工作清單] 命令列工具會顯示目前正在使用 User32.dll 的所有程式的名稱。若要使用 [工作清單,請依照下列步驟執行:
  1. 按一下 啟動然後按一下 執行.
  2. 複製並貼上 (或打字) 中的下列命令 執行 方塊中,然後再按 ENTER 鍵:
    cmd
  3. 輸入下列命令,然後再按 ENTER 鍵: 工作清單 /m User32.dll
以下是輸出的從 [工作清單] 工具範例:
摺疊此表格展開此表格
影像名稱PID模組
explorer.exe2532USER32.dll
OUTLOOK。EXE3128USER32.dll
iexplore.exe3232USER32.dll
tasklist.exe3012USER32.dll
判斷程式造成 User32.dll 錯誤,並重新安裝該程式。

如果此方法有效

如果您嘗試執行導致 User32.dll 錯誤訊息,該任務並沒有出現錯誤訊息,便已完成!

如果這個方法無效

如果您嘗試執行導致 User32.dll 錯誤訊息,該任務,並不會隱藏錯誤訊息,移至下一個方法。

方法 3: 使用 「 系統還原

您可以使用 Windows 系統還原 」 功能,Windows Vista 」 和 「 Windows XP 還原到之前收到 User32.dll 錯誤的時間。如需有關如何使用 「 系統還原 」,Windows Vista 中的資訊,請造訪下列 Microsoft 網站:
http://windowshelp.microsoft.com/Windows/en-US/Help/9f6d755a-74bb-4a7d-a625-d762dd8e79e51033.mspx
如需有關如何使用 「 系統還原 」 的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
936212如何修復作業系統,以及如何在 Windows Vista 中的時間內還原至之前的作業系統的設定
927525 在您安裝裝置,或更新裝置驅動程式之後,Windows Vista 可能無法啟動
306084 如何在 Windows XP 中將作業系統還原先前的狀態
重要我們建議您在執行系統還原之後,執行 Windows Update。如需詳細資訊,請參閱方法 1。我們也建議您在執行 Windows 更新之後更新您的防毒軟體。 如需有關 Microsoft 支援的防毒軟體的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
49500防毒軟體供應商的清單

您的電腦以安全模式啟動,並使用 「 系統還原

如果您無法啟動系統還原,您可以使用 Windows 安全模式來啟動 「 系統還原。如需有關如何以安全模式啟動 Windows Vista,以及如何使用 「 系統還原 」 的資訊,請造訪下列 Microsoft 網站:
http://windowshelp.microsoft.com/Windows/en-US/Help/6b969e00-d4ec-4d3a-bffe-b96107e3bda91033.mspx
如需有關如何以安全模式啟動 Windows XP,以及如何使用 「 系統還原 」 的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
304449如何在 Windows XP 中啟動 「 系統還原 」 工具在命令提示字元
用於備份或還原精靈] 在 Windows Server 2003,並在 Windows 2000 中將電腦還原至之前收到 User32.dll 錯誤的時間。如需有關如何還原 Windows Server 2003 和 Windows 2000 的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
325375如何疑難排解在 Windows Server 2003 的啟動問題
315396 如何疑難排解在 Windows 2000 中的啟動問題
重要我們建議您在執行系統還原之後,執行 Windows Update。如需詳細資訊,請參閱方法 1。我們也建議您在執行 Windows 更新之後更新您的防毒軟體。 如需有關 Microsoft 支援的防毒軟體的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
49500防毒軟體供應商的清單

如果此方法有效

如果您嘗試執行導致 User32.dll,該任務並沒有出現錯誤訊息,便已完成!

如果這個方法無效

如果您嘗試執行導致 User32.dll 錯誤訊息,該任務,而錯誤訊息持續發生,不幸的是此內容不能幫助您更進一步的。因此下, 一個步驟是,請參閱本文的 〈 進階疑難排解 〉 一節。如果您必須使用進階疑難排解,而且您不是進階的使用者,您可能想要尋求他人協助,或連絡支援部門,您可能會想:
http://support.microsoft.com

進階疑難排解設定

方法 1: 使用修復主控台 」,以還原 User32.dll 檔案

從您的 Windows 光碟片中還原原始檔案 User32.dll 可以改正某些 User32.dll 錯誤。User32.dll 檔案還原,則會利用您的 Windows 光碟片上的 User32.dll 所含的原始複本取代 User32.dll 您電腦上的複本。

如果您正在執行其中一個下列的 Windows 作業系統,您可以使用這個方法:
  • Windows XP
  • Windows 2003 Server
  • Windows 2000
如需有關如何還原檔案,Windows Vista 中的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
936212如何修復作業系統,以及如何在 Windows Vista 中的時間內還原至之前的作業系統的設定
附註如果先列印本文,您可能會發現變得更容易依照下列步驟執行工作。

執行此程序之前,您應該具備 Windows 安裝光碟片。
  1. 插入您的電腦,Windows XP CD,然後重新啟動電腦。
  2. 如果您會詢問您是否要從光碟機啟動電腦,請按一下 [是].
  3. 出現 「 歡迎使用安裝程式 」 畫面時,請按 R 若要啟動 「 修復主控台 」。
  4. 當您被要求輸入系統管理員密碼時,請輸入系統管理員密碼。如果系統管理員密碼是空白的只要按下 ENTER。
  5. 在命令提示字元中,輸入下列命令:
    光碟片 %systemroot%\system32
  6. 首先,重新命名已損毀或已損毀的檔案,以便複製原始檔案時,則不會刪除它。若要這樣做,請鍵入下列命令:
    ren USER32。DLL USER32。BAK
  7. 接下來,還原原本的 User32.dll 檔案從 Windows CD 到您的電腦。若要這樣做,請鍵入下列命令:
    展開 [CD 磁碟機代號]: \i386\USER32。DLL %systemroot%\system32 /Y
    附註這個命令中,取代 [CD 磁碟機代號] 與您的 CD 光碟機代號,例如 D.
  8. 若要結束 「 修復主控台 」 並重新啟動電腦,請鍵入 結束 在命令提示字元],然後按 ENTER 鍵。
重要我們建議您執行 Windows Update 之後您還原檔案時使用 「 修復主控台。如需詳細資訊,請參閱 「 方法 1: 使用 Windows 更新,以取得有關 User32.dll 任何修正 」 一節。我們也建議您在執行 Windows 更新之後更新您的防毒軟體。 如需有關 Microsoft 支援的防毒軟體的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
49500防毒軟體供應商的清單
如需有關 「 修復主控台 」 的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
314058Windows XP 修復主控台的描述
326215 如何使用 「 修復主控台不會啟動的 Windows Server 2003 電腦上
229716 Windows 2000 修復主控台的描述

如果此方法有效

如果您嘗試執行導致 User32.dll 錯誤訊息,該任務並沒有出現錯誤訊息,便已完成!

如果這個方法無效

如果您嘗試執行導致 User32.dll 錯誤訊息,該任務,並不會隱藏錯誤訊息,移至下一個方法。

方法 2: 使用 「 系統檔案檢查員 」 工具來修復 User32.dll

系統檔案檢查員 」 可讓您掃描所有受保護的檔案,以檢查其版本。如果系統檔案檢查員 」 發現受保護的檔案已被覆寫,該檔案的正確版本 (%systemroot%\system32\dllcache) 上的 [快取] 資料夾,或從 Windows 安裝原始程式檔中,並且再將取代不正確的檔案。您必須登入,以系統管理員,或執行系統檔案檢查員 」 的系統管理員群組成員身份。 如需有關如何使用 「 系統檔案檢查員 」 工具的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
310747Windows XP 和 Windows Server 2003 系統檔案檢查程式 (Sfc.exe) 的描述
936212 如何修復作業系統,以及如何在 Windows Vista 中的時間內還原至之前的作業系統的設定

如果此方法有效

如果您嘗試執行導致 User32.dll 錯誤訊息,該任務並沒有出現錯誤訊息,便已完成!

如果這個方法無效

如果您嘗試執行導致 User32.dll 錯誤訊息,該任務,但是仍然出現錯誤訊息,您可以與支援部門連絡:
http://support.microsoft.com

其他相關資訊

當程式或服務嘗試使用程式損毀、 遺失或損毀的 User32.dll 時,您會收到錯誤訊息。在某些情況下,因為某個程式或服務正在嘗試使用 User32.dll 方式不正確,就會發生的錯誤訊息。

任何 User32.dll 錯誤,錯誤訊息指出特定問題的原因和錯誤訊息可以幫助您判斷如何解決這個問題。一般而言,User32.dll 錯誤歸因於一或多個下列原因所造成:
  • User32.dll 檔案損毀、 重新命名或移除: 在系統或軟體更新時,可能會損毀 User32.dll 檔案。損毀的 User32.dll 檔案可能遺失所需的安裝程式的常式。當程式嘗試要呼叫這些常式時,便會發生錯誤。使用者可能會意外地重新命名或移除 User32.dll 檔案。
  • 程式檔案已損毀或遺失: 如果在 User32.dll 呼叫常式的程式已經損毀或遺失的檔案,這些程式可以依 User32.dll 的無效呼叫常式。無效的呼叫中 User32.dll 常式來產生 User32.dll 錯誤。
  • 軟體會呼叫之函式的不存在於 User32.dll: 如果不存在,則在 User32.dll 函式要求一種軟體程式,就會發生的錯誤訊息。如果軟體版本不正確的 Windows 上執行,就會發生這個問題。
  • 程式不允許 Windows 在必要時,更新 User32.dll: 防毒程式可能設定來防止任何檔案,請在您的電腦上。
  • 發生記憶體配置問題: Windows 會保留給 User32.dll 的記憶體空間。如果不同的檔案佔用的記憶體空間保留給 User32.dll,User32.dll 安置在記憶體中。Windows 會認為這個重新配置"不合法系統 DLL 重新定位,",這會導致錯誤。在這種檔案佔用的記憶體空間保留給 User32.dll 的順序安裝軟體或檔案時,通常發生於這些記憶體的問題。
  • 發生驅動程式問題: 遺漏或損毀的驅動程式或不相容的驅動程式版本可能會導致 User32.dll 常式為無效的呼叫。無效的呼叫中 User32.dll 常式導致 User32.dll 錯誤訊息。
  • [視窗登錄已損毀: 損毀的 Windows 登錄可能會導致損毀的 User32.dll 檔案。
  • 病毒感染 User32.dll: User32.dll 是非常重要的檔案以進行 Windows 中,而且沒有嘗試進行感染的病毒。

?考

Windows NT 4.0 資源套件補充 4 包含了 「 相依性查核器 」 工具。相依性查核器會顯示 Windows 模組,例如 User32.dll 依存模組。如需相依性查核器的詳細資訊,請造訪 Microsoft 網站:
http://technet2.microsoft.com/WindowsServer/en/library/4e43ba6c-e297-422c-9873-9538cab18ee61033.mspx?mfr=true
315241 將電腦啟動 0xc000026C 或停駐點: 當您啟動 Windows XP 時,就會發生 0xc0000221 「 無法以載入裝置驅動程式 」 錯誤
935448 某些程式可能無法啟動,而且您會收到正在執行 Windows XP Service Pack 2 的電腦上的錯誤訊息: 「 不合法系統 DLL 重新定位"
184802 User32.dll 或 Kernel32.dll 初始化失敗
931362 如果要疑難排解未如預期般在 Windows Vista 上安裝後執行的程式的進階的方法

屬性

文章編號: 142676 - 上次校閱: 2013年4月5日 - 版次: 6.0
這篇文章中的資訊適用於:
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows XP Home Edition (家用版)
  • Microsoft Windows XP Professional
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Windows Vista 商用進階版
  • Windows Vista 家用進階版
  • Windows Vista 家用入門版
  • Windows Vista 旗艦版
  • Windows Vista Starter
關鍵字:?
kbexpertiseadvanced kbfix kbresolve kbenv kbmt KB142676 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:142676
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com