共用方式為


Windows 7 和 Windows Server 2008 R2 中的AppInit_DLLs

平台

用戶端 - Windows 7
伺服器 - Windows Server 2008 R2

功能影響

嚴重性 - 低
頻率 - 低

Description

AppInit_DLLs是一種機制,可讓任意的 DLL 清單載入系統上的每個使用者模式進程。 Microsoft 正在修改 Windows 7 和 Windows Server 2008 R2 中的 AppInit DLL 設施,以新增程式碼簽署需求。 這可協助改善系統可靠性和效能,以及改善軟體來源的可見度。

組態

儲存在登錄中HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion \Windows 機碼底下的值會決定AppInit_DLLs基礎結構的行為。 下表描述這些登錄值:

Description 範例值
LoadAppInit_DLLs (REG_DWORD) ${REMOVE}$
全域啟用或停用AppInit_DLLs。${REMOVE}$
0x0 – 已停用AppInit_DLLs。
0x1 – 已啟用AppInit_DLLs。
AppInit_DLLs (REG_SZ) 要載入之 DLL 的空間或逗號分隔清單。 應該使用簡短名稱來指定 DLL 的完整路徑。 C:\PROGRA~1\WID288~1\MICROS~1.DLL
RequireSignedAppInit_DLLs (REG_DWORD) ${REMOVE}$
僅載入程式碼簽署的 DLL.${REMOVE}$
0x0 – 載入任何 DLL。
0x1 – 僅載入程式碼簽署的 DLL。

 

Windows 7

AppInit_DLLs基礎結構所載入的所有 DLL 都應該經過程式碼簽署。 為了應用程式相容性,Windows 7 作業系統將會載入所有 AppInit DLL。 不過,Microsoft 建議所有應用程式開發人員將 DLL 程式碼簽署,以協助改善 Windows 的可靠性,並準備在未來版本的 Windows 中強制執行程式碼簽署。 RequireSignedAppInit_DLLs登錄機碼會控制此行為,而且 Windows 7 上的值預設會設定為 0。

Windows Server 2008 R2

AppInit_DLLs基礎結構所載入的所有 DLL 都必須經過程式碼簽署。 RequireSignedAppInit_DLLs登錄機碼會控制此行為,而且 Windows Server 2008 R2 上的值預設會設定為 1。

Windows 7 和 Windows Server 2008 R2 中的 AppInit DLL