在企業中部署 Windows 10 - 如何刪除預安裝的應用程序?
我正在嘗試在工作中部署一些 Windows 10 機器,並且需要刪除或禁用預安裝的應用程序。
出於某種原因,管理層認為不應將 Xbox 應用程序和 Candy Crush Soda Saga(等)安裝在公司工作站上。
我們已經嘗試在事後解除安裝它們,但是對於任何登錄的新使用者,它們會再次出現,這是不可接受的。我們如何真正從我們的企業 Windows 10 映像中刪除這些應用程序?
我發現實際控制 Windows 10 映像的最簡單方法是使用部署映像服務和管理 (DISM.exe)工具對其進行編輯。
簡而言之,您需要:
- 找到要部署的映像的 Windows wim。
- 例如,在 Windows 10 安裝 ISO 上,該文件為:
\sources\install.wim
- 創建一個目錄來臨時掛載wim。
- 安裝 wim。
- 進行更改。
- 為了刪除預裝的 Windows 10 應用程序,實際上我們需要在這里處理三種不同的類型——一個經典的執行檔、一堆Metro/UWP/Appx 應用程序和一堆 Windows 10 強制執行的安裝程序快捷方式到開始菜單。
- 似乎值得在這裡指出,如果您不確定要進行哪些更改,您可以使用 DISM 從已安裝的 WIM 中獲取 appx 包的列表。
- 送出更改並解除安裝 WIM。
更詳細地說:
- 找到 Windows wim。
我將從微軟的批量許可門戶下載最新的 64 位企業版 Windows 10 (SW_DVD5_WIN_ENT_10_1511.1_64BIT_English_MLF_X20-93758.ISO),並將 ISO 安裝到
D:
. (當然,一定要以讀寫訪問權限掛載它!)這會將我要編輯的 wim 文件放在:
D:\sources\install.wim
. 我會將其分配給 PowerShell 變數。
$wimfile = "D:\sources\install.wim"
- 創建一個目錄來臨時掛載wim。
我將使用
C:\Temp\W10entDISM
, 並將其分配給 PowerShell 變數。
$mountdir = "C:\Temp\W10entDISM"
dism.exe /Mount-Image /ImageFile:$wimfile /Index:1 /MountDir:$mountdir
- 進行更改。
為了刪除預裝的 Windows 10 應用程序,實際上我們需要在這里處理三種不同的類型——一個經典的執行檔、一堆 Metro/UWP/Appx 應用程序以及一堆 Windows 10 強制執行的安裝程序快捷方式到開始菜單。
經典的執行檔 OneDrive 安裝程序
- Windows 10 有一個執行檔
OneDriveSetup.exe
和用於自動執行它的系統資料庫項,我將使用文件系統安全 PowerShell 模組和命令行系統資料庫編輯器來消除它們,reg.exe
. 當然,這可以手動完成,也可以根據需要使用其他命令行工具完成。takeown /F $mountdir\Windows\SysWOW64\OneDriveSetup.exe /A
Add-NTFSAccess -Path "$($mountdir)\Windows\SysWOW64\onedrivesetup.exe" -Account "BUILTIN\Administrators" -AccessRights FullControl
Remove-Item $mountdir\Windows\SysWOW64\onedrivesetup.exe
reg load HKEY_LOCAL_MACHINE\WIM $mountdir\Users\Default\ntuser.dat
reg delete "HKEY_LOCAL_MACHINE\WIM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v OneDriveSetup /f
Windows 10 在開始菜單上創建的安裝程序快捷方式。
- 這些由名為“CloudContent”的系統資料庫項控制,在編輯安裝光碟時,我們需要創建並添加一個值以禁用。如果處理現有安裝,則已創建密鑰。
reg add HKEY_LOCAL_MACHINE\WIM\SOFTWARE\Policies\Microsoft\Windows\CloudContent
reg add HKEY_LOCAL_MACHINE\WIM\SOFTWARE\Policies\Microsoft\Windows\CloudContent /v DisableWindowsConsumerFeatures /t REG_DWORD /d 1 /f
reg unload HKEY_LOCAL_MACHINE\WIM
Metro/UWP/Appx 應用程序。
- 我們可以使用Get-AppxProvisionedPackage cmdlet查看並決定要刪除哪些 Appx 應用程序。(
Get-AppxProvisionedPackage -Path $mountdir
) 重要的是,並非所有預安裝的 Appx 應用程序都可以或應該被刪除。在撰寫本文時,建議不要解除安裝 AppConnector、ConnectivityStore 和 WindowsStore(如果需要,可以通過其他方式禁用它們的使用,但據報導實際上刪除它們會破壞事情並產生不良後果)。另外值得注意的是,在 Windows 10 中,Windows Calculator 是一個 Appx 包。- 我選擇保留這三個應用程序,Windows Calculator 和 Microsoft Solitaire Collection,並刪除其他所有應用程序,因此我最終執行:
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.BingNews_4.6.169.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.BingSports_4.6.169.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.BingWeather_4.6.169.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.BingFinance_4.6.169.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.CommsPhone_1.10.15000.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Messaging_1.10.22012.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.MicrosoftOfficeHub_2015.6306.23501.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Office.OneNote_2015.6131.10051.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.SkypeApp_3.2.1.0_neutral_~_kzf8qxf38zg5c
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Windows.Photos_2015.1001.17200.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsCamera_2015.1071.40.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsPhone_2015.1009.10.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsAlarms_2015.1012.20.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:microsoft.windowscommunicationsapps_2015.6308.42271.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsMaps_4.1509.50911.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsSoundRecorder_2015.1012.110.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.XboxApp_2015.930.526.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.ZuneMusic_2019.6.13251.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.ZuneVideo_2019.6.13251.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Office.Sway_2015.6216.20251.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.People_2015.1012.106.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Getstarted_2.3.7.0_neutral_~_8wekyb3d8bbwe
dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.3DBuilder_10.9.50.0_neutral_~_8wekyb3d8bbwe
- 送出更改並解除安裝 WIM。
dism.exe /Unmount-Image /MountDir:$mountdir /commit
只是程式碼:
$wimfile = "D:\sources\install.wim" $mountdir = "C:\Temp\W10entDISM" dism.exe /Mount-Image /ImageFile:$wimfile /Index:1 /MountDir:$mountdir # Remove Appx Packages dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.BingNews_4.6.169.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.BingSports_4.6.169.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.BingWeather_4.6.169.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.BingFinance_4.6.169.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.CommsPhone_1.10.15000.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Messaging_1.10.22012.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.MicrosoftOfficeHub_2015.6306.23501.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Office.OneNote_2015.6131.10051.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.SkypeApp_3.2.1.0_neutral_~_kzf8qxf38zg5c dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Windows.Photos_2015.1001.17200.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsCamera_2015.1071.40.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsPhone_2015.1009.10.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsAlarms_2015.1012.20.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:microsoft.windowscommunicationsapps_2015.6308.42271.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsMaps_4.1509.50911.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.WindowsSoundRecorder_2015.1012.110.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.XboxApp_2015.930.526.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.ZuneMusic_2019.6.13251.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.ZuneVideo_2019.6.13251.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Office.Sway_2015.6216.20251.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.People_2015.1012.106.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.Getstarted_2.3.7.0_neutral_~_8wekyb3d8bbwe dism.exe /Image:$mountdir /Remove-ProvisionedAppxPackage /PackageName:Microsoft.3DBuilder_10.9.50.0_neutral_~_8wekyb3d8bbwe # Remove OneDrive Setup takeown /F $mountdir\Windows\SysWOW64\OneDriveSetup.exe /A Add-NTFSAccess -Path "$($mountdir)\Windows\SysWOW64\onedrivesetup.exe" -Account "BUILTIN\Administrators" -AccessRights FullControl Remove-Item $mountdir\Windows\SysWOW64\onedrivesetup.exe reg load HKEY_LOCAL_MACHINE\WIM $mountdir\Users\Default\ntuser.dat reg delete "HKEY_LOCAL_MACHINE\WIM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v OneDriveSetup /f # Remove Cloud Content reg add HKEY_LOCAL_MACHINE\WIM\SOFTWARE\Policies\Microsoft\Windows\CloudContent reg add HKEY_LOCAL_MACHINE\WIM\SOFTWARE\Policies\Microsoft\Windows\CloudContent /v DisableWindowsConsumerFeatures /t REG_DWORD /d 1 /f # Unload, Unmount, Commit reg unload HKEY_LOCAL_MACHINE\WIM dism.exe /Unmount-Image /MountDir:$mountdir /commit
您現在應該有一個 ISO 和/或 wim 文件,您可以使用它來安裝 Windows 10 而不會添加廢話,或者將其輸入到您的配置/部署管理系統中。來自生成的作業系統部署的開始菜單的螢幕截圖: