如何在 Windows 中更正「停用自動執行登錄機碼」增強功能

文章翻譯 文章翻譯
文章編號: 967715
全部展開 | 全部摺疊

在此頁中

結論

本文所述的更新可修正停用自動執行功能的問題。如果沒有這些更新,將無法停用網路磁碟機的自動執行。即使已遵照先前提供的步驟執行,也會無法停用自動執行的快顯功能表和按兩下滑鼠功能。這個問題已透過本文所述的更新獲得修正。這些更新已透過 Windows Update 和「自動更新」散發通道發佈至下列系統:
  • Microsoft Windows 2000
  • Windows XP Service Pack 2
  • Windows XP Service Pack 3
  • Windows Server 2003 Service Pack 1
  • Windows Server 2003 Service Pack 2
本文也包含使用者可取得這些更新的下載位置連結。

其他相關資訊

不同的 Windows 版本必須安裝不同的更新,才能正確停用自動執行功能:
  • 如果要停用 Windows Vista 或 Windows Server 2008 中的自動執行功能,您必須安裝安全性更新 950582 (資訊安全佈告欄 MS08-038)。
  • 如果要停用 Windows XP、Windows Server 2003 或 Windows 2000 中的自動執行功能,您必須安裝安全性更新 950582、更新 967715 或更新 953252。

    注意更新 950582、967715 和 953252 提供相同的自動執行功能。更新 953252 已重新封裝為安全性更新 950582,以提供更多適用於 Windows Vista 和 Windows Server 2008 的安全性更新。

    下表顯示這三個更新的差異:
    摺疊此表格展開此表格
    安全性更新 950582更新 953252更新 967715
    適用的作業系統Windows Vista 和 Windows Server 2008Windows XP、Windows Server 2003 和 Windows 2000Windows XP、Windows Server 2003 和 Windows 2000
    包含安全性更新
    提供自動執行功能
    提供方法Windows Update、自動更新和下載中心下載中心Windows Update、自動更新和下載中心
    套件詳細資料套件是使用 Microsoft 知識庫文件 950582 所建立套件是使用 Microsoft 知識庫文件 950582 所建立套件是使用 Microsoft 知識庫文件 967715 所建立
    安裝先決條件更新之後,您可以使用下列任一章節中的程序來停用自動執行功能:
    • 如何使用群組原則設定停用所有的自動執行功能
    • 如何選擇性停用特定的自動執行功能
    • 如何手動設定 HonorAutorunSetting 登錄機碼

自動執行的目的

自動執行的主要目的為提供您在電腦上啟動硬體動作時的軟體回應。自動執行具有下列功能:
  • 按兩下
  • 關聯式功能表
  • 自動播放
這些功能通常由卸除式媒體或網路共用呼叫。在自動播放期間,將剖析來自媒體的 Autorun.inf 檔案。這個檔案會指定系統執行的命令。許多公司使用這項功能來啟動它們的安裝程式。

自動執行與自動播放的預設行為

Windows XP 系統上自動播放的預設行為

只要您一將媒體插入磁碟機中,自動播放就會開始讀取磁碟機,因此程式的安裝程式檔和音訊媒體上的音樂便會立即開始播放。在 Windows XP SP2 前,卸除式磁碟機 (例如軟碟機,但光碟機不算在內) 與網路磁碟機上的自動播放皆預設為停用。從 Windows XP SP2 開始,卸除式磁碟機的自動播放功能皆為啟用,包括 ZIP 磁碟和一些 USB 大量儲存裝置。如果您啟用會停用自動播放的設定 (本文會說明停用的程序),您將停用光碟機、卸除式磁碟機與所有磁碟機上的自動播放功能。

注意 「電腦設定」和「使用者設定」資料夾都有此設定。如果設定產生衝突,「電腦設定」中的設定優先於「使用者設定」中的設定。

自動執行的預設行為

自動執行命令一般儲存在 Autorun.inf 檔案中,這些命令能啟動應用程式、啟動安裝程式或啟動其他常式。在 Windows Vista 之前的 Windows 版本中,當插入包含 自動執行命令的媒體時,系統不需要使用者介入就會自動執行程式。由於程式碼可能會在使用者不知情或不同意的情況下執行,因此使用者基於安全上的考量可能會想要停用此功能。本文所述的組態設定讓系統管理員能夠選擇性或完全地停用執行在 Windows 2000、Windows XP、Windows Server 2003、Windows Vista 和 Windows Server 2008 系統上的所有自動執行功能。

Windows Vista 和 Windows Server 2008 之預設行為的目的是提示使用者是否要執行自動執行命令。本文稍後會說明如何變更這些設定。系統管理員可完全停用自動執行命令或回復至 Windows Vista 之前版本的行為,也就是自動執行自動執行命令。如果已設定為停用自動執行功能,或者未設定此原則,Windows Vista 和 Windows Server 2008 將會繼續提示使用者是否要執行自動執行命令。

停用自動執行功能的先決條件

若要停用自動執行功能,您必須安裝下列更新: 安裝先決條件之後,請依照下列步驟停用自動執行。

如何在 Windows Server 2008 或 Windows Vista 中使用群組原則設定停用所有的自動執行功能

請使用下列其中一種方法:

方法 1
  1. 按一下 [開始]
    摺疊此圖像展開此圖像
    [開始] 按鈕
    ,在 [開始搜尋] 方塊中輸入 Gpedit.msc,然後按下 ENTER。

    摺疊此圖像展開此圖像
    使用者帳戶控制權限
    如果出現要求您輸入系統管理員密碼或確認的提示,請輸入密碼或按一下 [允許]
  2. [電腦設定] 下,展開 [系統管理範本],展開 [Windows 元件],然後按一下 [自動播放原則]
  3. [詳細資料] 窗格中,按兩下 [關閉自動播放]
  4. 按一下 [啟用],然後選取 [關閉自動播放] 方塊中的 [所有磁碟機] 以在所有磁碟機中停用自動執行。
  5. 重新啟動電腦。
方法 2
  1. 按一下 [開始]
    摺疊此圖像展開此圖像
    [開始] 按鈕
    ,在 [開始搜尋] 方塊中輸入 Gpedit.msc,然後按下 ENTER。

    摺疊此圖像展開此圖像
    使用者帳戶控制權限
    如果出現要求您輸入系統管理員密碼或確認的提示,請輸入密碼或按一下 [允許]
  2. [電腦設定] 下,展開 [系統管理範本],展開 [Windows 元件],然後按一下 [自動播放原則]
  3. [詳細資料] 窗格中,按兩下 [自動執行的預設行為]
  4. 按一下 [已啟用],然後選取 [預設自動執行行為] 方塊中的 [不執行任何自動執行命令] 以停用所有磁碟機上的自動執行。
  5. 重新啟動電腦。

如何在 Windows Server 2003、Windows XP Professional 和 Windows 2000 中使用群組原則設定停用所有的自動執行功能

  1. 按一下 [開始],再按一下 [執行],在 [開啟] 方塊中輸入 Gpedit.msc,然後按一下 [確定]
  2. [電腦設定] 下,展開 [系統管理範本],然後按一下 [系統]
  3. [設定] 窗格中,用滑鼠右鍵按一下 [關閉自動播放],然後按一下 [內容]

    注意在 Windows 2000 中,原則設定的名稱為 [停用自動播放]
  4. 按一下 [啟用],然後選取 [關閉自動播放] 方塊中的 [所有磁碟機] 以在所有磁碟機中停用自動執行。
  5. 按一下 [確定] 關閉 [關閉自動播放內容] 對話方塊。
  6. 重新啟動電腦。

如何在 Windows 7 和其他作業系統中停用或啟用所有自動執行功能

Windows 7、Windows Server 2008、Windows Vista、Windows Server 2003 或 Windows XP

為我修正此問題
若要自動停用或啟用自動執行,請按一下適當的 [修正此問題] 連結。然後按一下 [檔案下載] 對話方塊中的 [執行],並依照此精靈中的步驟執行。
摺疊此表格展開此表格
停用自動執行啟用自動執行

修正此問題
Microsoft Fix it 50471

修正此問題
Microsoft Fix it 50475


注意
這些精靈只提供英文版本。不過,這些自動修正程式也適用於 Windows 的其他語言版本。

注意如果您不在發生問題的電腦上,則可將這些自動修正程式儲存至快閃磁碟機或 CD,如此一來,便可在發生問題的電腦上加以執行。


讓我自行修正此問題

重要 這個章節、方法或工作包含修改登錄的步驟。然而,如果您不當修改登錄,可能會發生嚴重的問題。因此,請務必小心執行這些步驟。為加強保護,修改登錄之前,請務必將它備份起來。以後您就可以在發生問題時還原登錄。如需有關如何備份和還原登錄的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
322756 如何在 Windows 中備份及還原登錄

若要在不包含 Gpedit.msc 的作業系統上自行停用「自動執行」,請依照下列步驟執行:
  1. 按一下 [開始],按一下 [執行],在 [開啟] 方塊中輸入 regedit,然後按一下 [確定]
  2. 在登錄中找出並按一下下列項目:
    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer\NoDriveTypeAutorun
  3. 用滑鼠右鍵按一下 NoDriveTypeAutoRun,然後按一下 [修改]
  4. [數值資料]方塊中,輸入 0xFF 以停用所有類型的磁碟機。或者,若要選擇性停用特定的磁碟機,請使用<如何選擇性停用特定的自動執行功能>一節所述的不同值。
  5. 按一下 [確定],然後結束「登錄編輯程式」。
  6. 重新啟動電腦。

如何選擇性停用特定的自動執行功能

若要選擇性停用特定的自動執行功能,您必須在下列其中一個登錄機碼子機碼中變更 NoDriveTypeAutoRun 項目:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\policies\Explorer\

下表顯示 NoDriveTypeAutoRun 登錄項目的的設定。
摺疊此表格展開此表格
數值意義
0x1 或 0x80停用未知類型磁碟機的自動執行
0x4停用卸除式磁碟機上的自動執行
0x8停用固定式磁碟機上的自動執行
0x10停用網路磁碟機上的自動執行
0x20停用 CD-ROM 光碟機上的自動執行
0x40停用 RAM 磁碟上的自動執行
0xFF停用所有類型磁碟機的自動執行
NoDriveTypeAutoRun 登錄項目的值會判斷自動執行功能將停用那些磁碟機。例如,如果您只想要停用網路磁碟機的自動執行,您必須將 NoDriveTypeAutoRun 登錄項目的值設定為 0x10。

如果您想要停用多部磁碟機的自動執行,您必須將相對應的十六進位值與 0x10 值相加。例如,如果您想要停用卸除式磁碟機和網路磁碟機的自動執行,您必須將 0x4 和 0x10 相加 (也就是將這兩個十六進位的值用數學加法相加),來決定要使用的值為 0x4 + 0x10 = 0x14。因此,在此範例中,您必須將 NoDriveTypeAutoRun 項目的值設定為 0x14。

NoDriveTypeAutoRun 登錄項目的預設值會根據不同的 Windows 作業系統而有所不同。這些預設值詳列於下表中。
摺疊此表格展開此表格
作業系統預設值
Windows Server 2008 和 Windows Vista0x91
Windows Server 20030x95
Windows XP0x91
Windows 20000x95

用於控制目前更新行為的登錄項目

所有 Windows XP 和 Windows Server 2003 目前更新中的修正程式會包含在下列子機碼的 HonorAutorunSetting 登錄項目中:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer\
登錄值
摺疊此表格展開此表格
數值資料類型範圍預設值
HonorAutorunSettingREG_DWORD0x0–0xFF0x01

注意針對 Windows Server 2003 和 Windows XP,此更新的所有變更是由 HonorAutorunSetting 登錄項目所控制,因此您可以在必要時還原成先前設定。此項目對 Windows 2000、Windows Vista 或 Windows Server 2008 使用者無效。

當您安裝更新 967715 時,HonorAutorunSetting登錄機碼只會在 HKEY_LOCAL_MACHINE 登錄 Hive 中建立。此登錄機碼的預設值為 0x1。此值會啟用出現在目前更新中的功能。在您安裝目前更新之前,此登錄機碼並未出現在系統中。您可以手動將登錄機碼設為 0 (若要這麼做,請在下列手動設定登錄機碼程序的步驟 6 輸入 0 而不是 1),以取得安裝套件前的自動執行行為。即使 HonorAutorunSetting 項目也是在 HKEY_CURRENT_USER 登錄 Hive 中設定,還是永遠都會從 HKEY_LOCAL_MACHINE 登錄 Hive 讀取 HonorAutorunSetting。

如何手動設定 HonorAutorunSetting 登錄機碼

Windows Server 2003 和 Windows XP

  1. 按一下 [開始],然後按一下 [執行]
  2. [開啟] 方塊中,輸入 regedit,然後按一下 [確定]
  3. 找出並按一下下列登錄子機碼:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer\
  4. 在右邊窗格中用滑鼠右鍵按一下,指向 [新增],然後按一下 [DWORD 值]
  5. 輸入 HonorAutorunSetting,然後按下 ENTER。
  6. [數值資料] 方塊中,輸入 1,按一下 [十六進位] (如果它未被選取的話),然後按一下 [確定]
  7. 結束「登錄編輯程式」。
  8. 請重新啟動系統,使新設定生效。

如何避免在共用上建立 Autorun.inf 檔案

若要避免自動執行功能被叫用,且避免任何程式將 Autoun.inf 檔案寫入對應網路磁碟機,請依照下列步驟執行:
  1. 從對應網路磁碟機的根目錄刪除任何 Autorun.inf 檔案。
  2. 請勿授與任何人對應網路磁碟機根目錄的「建立」權限。
注意在您執行這個程序後,自動執行功能將不可從網路磁碟機使用。

如何避免使用者連接至 USB 儲存裝置

下列「Microsoft 知識庫」文件包含避免使用者連接至 USB 儲存裝置的兩種方法:
823732 如何停用 USB 儲存裝置
注意當您在系統上執行其中一個程序後,USB 儲存裝置將不再在系統上運作。

常見問題集

這個更新是否會變更我目前的自動執行設定?
否。這個更新不會變更您系統上目前的自動執行設定。相反地,這個更新可以讓使用者正確強制執行自動執行設定。

安裝這個更新後是否會變更使用者經驗?
安裝更新 967715 之後,您可能會注意到網路磁碟機的自動執行功能不再運作。這是因為,根據預設,網路磁碟機上的自動執行在登錄中是設定為停用。所以安裝更新之後,會正確強制執行已經設定為停用網路磁碟機上自動執行的登錄機碼。這是唯一一個安裝更新後會變更的功能。如果使用者在更新之前已停用其他磁碟機的自動執行,他們可能會注意到更新之後,按兩下滑鼠和關聯式功能表的行為變更。

這是一個需要 Microsoft 發行安全性更新的安全性弱點嗎?
不是。停用自動執行功能是選擇性的設定,可讓部分客戶決定是否要部署。更新 967715只會解決自動執行功能的問題。

為什麼當我查閱更新 953252 時,會將我重新導向至更新 967715?
更新 953252 和更新 967715 提供相同的更新,只是提供的通道不一樣。更新 953252 只透過下載中心發行,而更新 967715 是透過 Windows Update、自動更新和下載中心發行。為了避免重複相同的資訊,我們會將您重新導向至更新 967715,以提供這些更新的所有最新相關資訊。

如果我的電腦已經安裝更新 950582 或更新 953252,會再次提供更新 967715 嗎?
不會。更新 967715 與更新 953252 是相同的發行更新,只是封裝在更新 950582 下。因此,如果「新增或移除程式」顯示已安裝更新 950582 或更新 953252,您就不需要更新 967715,且 Windows Update 或「自動更新」將不會提供此更新。

這些更新會停用自動執行功能嗎?
不會。正確提供的更新會採用停用自動執行功能的登錄機碼值。這些更新不會變更登錄機碼值,而會持續採用安裝更新前已設定的值。如果在安裝這些更新前未設定登錄值,則必須適當設定該登錄機碼設定,才能停用自動執行功能。

適用於 Windows Vista 和 Windows Server 2008 的更新為何?
適用於 Windows Vista 和 Windows Server 2008 的更新已與安全性更新 950582 (資訊安全佈告欄 MS08-038) 中的部分安全性更新一起發行。為了要利用停用自動執行的登錄機碼設定,執行 Windows Vista 或 Windows Server 2008 系統的客戶必須安裝安全性更新 950582。

此安全性更新的已知問題

  • 會多次重新提供更新 967715

    如果本文所述的 HonorAutorunSetting 登錄設定未新增到登錄 Hive 中,則會重新提供更新 967715。 如果某些其他安裝在電腦上的程式阻擋更新寫入登錄項目,就可能會發生這個問題。該軟體可能會在安裝更新期間阻擋更新,或可能會在電腦重新啟動之後移除登錄項目。

    如果要解決這個問題,請在安全模式下安裝更新。如果要執行這項操作,請依照下列步驟執行:
    1. 下載更新。如果要執行這項操作,請依照下列步驟執行:
      1. 造訪「Microsoft 下載中心」網站:
        http://www.microsoft.com/downloads/zh-tw/default.aspx (英文)
      2. [搜尋下載項目] 方塊中,輸入說明更新的知識庫文件編號,然後按一下 [Go]
      3. 下載更新,並儲存在桌面上。
    2. 安裝更新。如果要執行這項操作,請依照下列步驟執行:
      1. 按兩下已下載的檔案以進行安裝。

        當系統提示您重新啟動電腦時,請照著做。
      2. 造訪 Windows Update 或 Microsoft Update 網站來判斷是否已再次提供該更新。如果已再次提供更新給您,請繼續進行下一個步驟。
    3. 在安全模式下安裝更新。安全模式會停用大部分的執行程序和服務。這些服務包括 Windows Update 服務。在安全模式下安裝更新,可以快速測試應用程式或處理程序是否會干擾安裝。如果要在安全模式下安裝更新,請依照下列步驟執行:
      1. 重新啟動電腦。
      2. 電腦啟動時,按下 F8 鍵。
      3. 使用方向鍵選取 [安全模式],然後按下 ENTER。
      4. 按兩下您在步驟 1 中下載的檔案,以安裝該檔案。
      5. 安裝完成時,重新啟動電腦。
      6. 造訪 Windows Update 或 Microsoft Update 網站來判斷是否已提供更新。或者,等候「自動更新」再次執行。

檔案資訊

此軟體更新的英文 (美國) 版會安裝具有下表中所列屬性的檔案。這些檔案的日期和時間是以 Coordinated Universal Time (UTC) 表示。本機電腦上這些檔案的日期和時間,是以您當地的時間和目前的日光節約時間 (DST) 的時差來顯示。此外,當您對檔案執行特定作業時,其日期和時間可能會改變。

Windows 2000 檔案資訊

關於所有支援的 Microsoft Windows 2000 Service Pack 4 版本

摺疊此表格展開此表格
File NameVersionDateTimeSizeFolder
shell32.dll5.0.3900.715515-Apr-200823:132,362,640

Windows XP 和 Windows Server 2003 檔案資訊

  • 套用至特定里程碑 (RTM、SPn) 和服務分支 (QFE、GDR) 的檔案,會記錄在「SP 要求」和「服務分支」欄中。
  • GDR 服務分支只包含針對普遍的嚴重問題所發行的通用修正程式。QFE 服務分支除了通用修正程式之外,還包含 Hotfix。
  • 除了這些表格中所列的檔案外,此軟體更新也會安裝使用 Microsoft 數位簽章所簽署的相關安全性目錄檔案 (KBnumber.cat)。

關於所有支援的 Windows XP 之 x86 版本

摺疊此表格展開此表格
File NameVersionDateTimeSizeFolder
shell32.dll6.0.2900.340202-Jul-200823:468,454,656SP2GDR
shell32.dll6.0.2900.340202-Jul-200823:338,460,800SP2QFE
xpsp3res.dll5.1.2600.331414-Feb-200819:36351,744SP2QFE
shell32.dll6.0.2900.562217-Jun-200805:328,461,312SP3GDR
shell32.dll6.0.2900.562217-Jun-200805:348,461,824SP3QFE

關於所有支援的 Windows Server 2003 與 Windows XP Professional x64 Edition 之 x64 版本

摺疊此表格展開此表格
File NameVersionDateTimeSizeCPUFolder
shell32.dll6.0.3790.315810-Feb-200902:1210,502,144X64SP1GDR
wshell32.dll6.0.3790.315810-Feb-200902:138,384,000X86SP1GDR\wow
shell32.dll6.0.3790.315810-Feb-200902:1210,506,240X64SP1QFE
w03a2409.dll5.2.3790.309010-Feb-200902:1230,208X64SP1QFE
wshell32.dll6.0.3790.315810-Feb-200902:128,386,560X86SP1QFE\wow
ww03a2409.dll5.2.3790.309010-Feb-200902:1229,696X86SP1QFE\wow
shell32.dll6.0.3790.431510-Feb-200902:2110,508,288X64SP2GDR
wshell32.dll6.0.3790.431510-Feb-200902:228,360,960X86SP2GDR\wow
shell32.dll6.0.3790.431510-Feb-200902:1210,508,800X64SP2QFE
wshell32.dll6.0.3790.431510-Feb-200902:138,361,472X86SP2QFE\wow

關於所有支援的 Windows Server 2003 之 x86 版本

摺疊此表格展開此表格
File NameVersionDateTimeSizeFolder
shell32.dll6.0.3790.315817-Jun-200807:138,384,000SP1GDR
shell32.dll6.0.3790.315817-Jun-200807:428,386,560SP1QFE
w03a2409.dll5.2.3790.309013-Feb-200820:1129,696SP1QFE
shell32.dll6.0.3790.431517-Jun-200806:388,360,960SP2GDR
shell32.dll6.0.3790.431517-Jun-200807:228,361,472SP2QFE

關於所有支援的 Windows Server 2003 之 IA-64 版本

摺疊此表格展開此表格
File NameVersionDateTimeSizeCPUFolder
shell32.dll6.0.3790.315810-Feb-200902:1213,238,272IA-64SP1GDR
wshell32.dll6.0.3790.315810-Feb-200902:128,384,000X86SP1GDR\wow
shell32.dll6.0.3790.315810-Feb-200902:1213,243,904IA-64SP1QFE
w03a2409.dll5.2.3790.309010-Feb-200902:1228,672IA-64SP1QFE
wshell32.dll6.0.3790.315810-Feb-200902:128,386,560X86SP1QFE\wow
ww03a2409.dll5.2.3790.309010-Feb-200902:1229,696X86SP1QFE\wow
shell32.dll6.0.3790.431510-Feb-200901:5313,244,928IA-64SP2GDR
wshell32.dll6.0.3790.431510-Feb-200901:548,360,960X86SP2GDR\wow
shell32.dll6.0.3790.431510-Feb-200902:1213,246,464IA-64SP2QFE
wshell32.dll6.0.3790.431510-Feb-200902:138,361,472X86SP2QFE\wow

屬性

文章編號: 967715 - 上次校閱: 2011年3月14日 - 版次: 3.0
關鍵字:?
atdownload kbbug kbexpertiseinter kbfix kbpubtypekc kbsecbulletin kbsecurity kbsecvulnerability kbsurveynew kbfixme kbmsifixme KB967715
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