欢迎光临
个人知识库,ERP、IT知识分享和应用

如何禁用 Microsoft Edge 自动更新?

请访问原文链接:如何禁用 Microsoft Edge 自动更新 (Windows, Linux, macOS),查看最新版。原创作品,转载请保留出处。

作者主页:sysin.org

不同于 Firefox 官方提供了禁用自动更新的配置功能,Google Chrome 及基于其开源版本 Chromium 实现的衍生浏览器【国外各种(Microsoft Edge 等),国产各种…】不仅没有禁用自动更新的配置,而且是强制自动更新如同病毒病毒肆虐一般难以控制,非常不尊重用户。即使我们使用变通方法屏蔽了自动更新,它们竟然还会不停的提示软件已经过期。

适用的版本

本文写作时以 Microsoft Edge 88 版本为例,验证到 105 版本可用,不排除新版本将来可能有所变更。

如果方法失效,欢迎反馈,笔者将及时修正和更新,谢谢!

Microsoft Edge for Windows

Microsoft Edge 如何自动更新?

Edge 在 Windows 平台同时发布两个版本,分别是:

企业版(或者称为商业版)即 Windows System Setup,安装在 Program Files 文件夹下,需要管理员权限安装;

用户版即 Windows User Setup,安装在 Users 文件夹下,不需要管理员权限,普通用户就可以安装。

企业版使用以下方法进行自动更新

服务:
Microsoft Edge 更新服务 (edgeupdate)
Microsoft Edge 更新服务 (edgeupdatem)
Microsoft Edge Elevation Service (MicrosoftEdgeElevationService)

任务计划:
MicrosoftEdgeUpdateBrowserReplacementTask
MicrosoftEdgeUpdateTaskMachineCore
MicrosoftEdgeUpdateTaskMachineUA

主程序安装路径:
C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe
更新程序路径:
C:\Program Files (x86)\Microsoft\EdgeUpdate\MicrosoftEdgeUpdate.exe

巨硬 A3 不讲究,无论 64-bit 还是 32-bit 的 Edge 都安装在 “Program Files (x86”) 目录下面(Chrome 没有这个问题)。

用户版使用以下方法自动更新

任务计划:
MicrosoftEdgeUpdateTaskUser当前用户的SIDCore
MicrosoftEdgeUpdateTaskUser当前用户的SIDUA
例如:
MicrosoftEdgeUpdateTaskUserS-1-5-21-3860493963-3742860931-3732056798-500Core
MicrosoftEdgeUpdateTaskUserS-1-5-21-3860493963-3742860931-3732056798-500UA

用户版安装路径:
C:\Users\<用户名>\AppData\Local\Microsoft\Edge\Application\msedge.exe
自动更新程序路径:
C:\Users\<用户名>\AppData\Local\Microsoft\EdgeUpdate\MicrosoftEdgeUpdate.exe

根据上述路径,手动禁用或者删除即可禁用自动更新,即分别禁用或删除以下:

  • 更新服务
  • 任务计划
  • 删除更新程序(整个 Update 文件夹)

使用 PowerShell 禁用更新

打开 Windows PowerShell 直接复制以下脚本运行一下更加方便:

或者将脚本保存为 disable-edge-auto-update.ps1 文件,右键点击 “使用 PowerShell 运行” 即可快速完成。

if ([Environment]::Is64BitOperatingSystem -eq "True") {
    #Write-Host "64-bit OS"
    $PF=${env:ProgramFiles(x86)}
}
else {
    #Write-Host "32-bit OS"
    $PF=$env:ProgramFiles
}

if ($(Test-Path "$PF\Microsoft\Edge\Application\msedge.exe") -eq "True") {
    # 结束进程
    taskkill /im MicrosoftEdgeUpdate.exe /f
    taskkill /im msedge.exe /f
    # Microsoft Edge 更新服务 (sysin)
    #这里也可以使用 sc.exe stop "service name"
    Stop-Service -Name "edgeupdate"
    Stop-Service -Name "edgeupdatem"
    Stop-Service -Name "MicrosoftEdgeElevationService"
    # Windows 10 默认 PS 版本 5.1 没有 Remove-Service 命令
    # This cmdlet was added in PS v6. See https://docs.microsoft.com/en-us/powershell/scripting/whats-new/what-s-new-in-powershell-core-60?view=powershell-6#cmdlet-updates.
    #Remove-Service -Name "edgeupdate"
    #Remove-Service -Name "edgeupdatem"
    #Remove-Service -Name "MicrosoftEdgeElevationService"
    # sc 在 PowerShell 中是 Set-Content 别名,所以要使用 sc.exe 否则执行后无任何效果
    sc.exe delete "edgeupdate"
    sc.exe delete "edgeupdatem"
    sc.exe delete "MicrosoftEdgeElevationService"
    # 任务计划企业版
    #schtasks.exe /Delete /TN \MicrosoftEdgeUpdateBrowserReplacementTask /F
    #schtasks.exe /Delete /TN \MicrosoftEdgeUpdateTaskMachineCore /F
    #schtasks.exe /Delete /TN \MicrosoftEdgeUpdateTaskMachineUA /F
    Get-ScheduledTask -taskname MicrosoftEdgeUpdate* | Unregister-ScheduledTask -Confirm: $false
    # 移除更新程序
    Remove-Item "$PF\Microsoft\EdgeUpdate" -Recurse -Force
    Write-Output "Disable Microsoft Edge Enterprise Auto Update Successful!"
}
elseif ($(Test-Path "$env:USERPROFILE\AppData\Local\Microsoft\Edge\Application\msedge.exe") -eq "True") {
    # 结束进程
    taskkill /im MicrosoftEdgeUpdate.exe /f
    taskkill /im msedge.exe /f
    # 用户版没有创建服务
    # 获取SID方法
    function Get-CurrentUserSID {
        [CmdletBinding()]
        param(
        )
        Add-Type -AssemblyName System.DirectoryServices.AccountManagement
        return ([System.DirectoryServices.AccountManagement.UserPrincipal]::Current).SID.Value
    }
    # 用户版任务计划
    schtasks.exe /Delete /TN \MicrosoftEdgeUpdateTaskUser$(Get-CurrentUserSID)Core /F
    schtasks.exe /Delete /TN \MicrosoftEdgeUpdateTaskUser$(Get-CurrentUserSID)UA /F
    #Get-ScheduledTask -taskname MicrosoftEdgeUpdate* | Unregister-ScheduledTask -Confirm: $false
    # 移除更新程序
    Remove-Item "$env:USERPROFILE\AppData\Local\Microsoft\EdgeUpdate" -Recurse -Force
    Write-Output "Disable Microsoft Edge Users Setup Auto Update Successful!"
}
else {
    Write-Output "No Microsoft Edge Installation Detected!"
}

效果图:

disable-edge-auto-update-win

使用绿色版,不带更新功能。

Edge 用户版即 Windows User Setup 直接双击安装,是带更新程序的,但是使用 7-zip 解压出一个名为 MSEDGE.7z 的压缩包,再次解压的文件夹中找到 msedge.exe 就可以运行,这就是绿色版,不带更新程序。

使用组策略配置禁用 Edge 更新,仅限域客户端,请参看

未经允许不得转载:Blog.XiaoMing.Xyz » 如何禁用 Microsoft Edge 自动更新?

登录

找回密码

注册