Windows 操作系统可以定期更新最新的补丁程序,以提高系统性能、修补安全漏洞和扩展新功能。Microsoft 将服务和修补程序作为(WaaS)免费更新服务的一部分一同发布,以增强 Windows 计算体验。Windows 更新会根据系统设置自动安装,很少需要用户去手动介入。免费更新也是 Windows 维护和支持的一部分,可发布软件以有效修复错误。 为了确保安全计算,Windows Update 会确保系统与最新的安全补丁(Security Patch)、修补程序(Hotfix)和错误修复(Bug Fix)保持同步。
用户除了可以通过「Windows 设置」——「更新和安全」界面中查看更新历史记录外,还可以通过 PowerShell 来查看 Windows Update 更新历史记录。下面我们就介绍如何使用任务自动化和配置管理工具(如 PowerShell)列出 Windows Update 事件的所有历史记录。
此前我们也介绍过如何使用 PowerShell 查看 Windows 10 Build 升级历史记录
使用PowerShell查看Windows Update更新历史记录
1 使用 Windows + X 快捷键打开快捷菜单——选择 Windows PowerShell(管理员)
2 执行如下命令,即可查看到当前计算机中已安装补丁的详细信息,包括:标题、描述、KB 号、安装日期和状态等等。
wmic qfe list
3 也可以键入以下命令以列出修补程序 KB 及其关联的描述。
get-wmiobject -class win32_quickfixengineering
当然,也可以向 Windows PC 更新历史记录写入查询函数,以返回指向 Windows 系统上匹配列表记录的指针。
function Convert-WuaResultCodeToName { param( [Parameter(Mandatory=$true)] [int] $ResultCode ) $Result = $ResultCode switch($ResultCode) { 2 { $Result = "成功" } 3 { $Result = "成功但包含错误" } 4 { $Result = "失败" } } return $Result } function Get-WuaHistory { $session = (New-Object -ComObject 'Microsoft.Update.Session') $history = $session.QueryHistory("",0,1000) | ForEach-Object { $Result = Convert-WuaResultCodeToName -ResultCode $_.ResultCode $_ | Add-Member -MemberType NoteProperty -Value $Result -Name Result $Product = $_.Categories | Where-Object {$_.Type -eq 'Product'} | Select-Object -First 1 -ExpandProperty Name $_ | Add-Member -MemberType NoteProperty -Value $_.UpdateIdentity.UpdateId -Name UpdateId $_ | Add-Member -MemberType NoteProperty -Value $_.UpdateIdentity.RevisionNumber -Name RevisionNumber $_ | Add-Member -MemberType NoteProperty -Value $Product -Name Product -PassThru Write-Output $_ } $history | Where-Object {![String]::IsNullOrWhiteSpace($_.title)} | Select-Object Result, Date, Title, SupportUrl, Product, UpdateId, RevisionNumber }
在定义好函数之后,就可以用来获取更新:
Get-WuaHistory | Format-Table
最新评论
Microsoft.WindowsStore只有22507,没有22504,22507下载的时候找不到框架
经过测试,是可行的。感谢分享。
1.你贴的方法我没测试,如果有效,也只适用于个人或小规模使用,不具备普遍性。 2.根据微软最佳实践,是建立一个本地帐户专门用来远程连接。 3.在域环境中,不存在使用 Microsoft 帐户的情况。
关于rdp无法连接win11微软账户的问题 有很简单的解决办法 不需要退出微软账户或者重置之类的 在中文互联网搜索到的教程内容一般是使用MicrosoftAccount\邮箱作为用户名 密码填微软账户密码然后链接 但是这有个问题就是如果服务端(被控端)本身无缓存时将无法链接 改用英文在google搜索后发现了这样一篇微软社区问答 https://answers.microsoft.com/en-us/windows/forum/all/remote-desktop-not-working-with-microsoft-account/71f0c323-688a-4c97-8740-e80eb31ae11d 打开cmd终端后输入runas /u:MicrosoftAccount\你的邮箱 winver并回车 在出现类似输入MicrosoftAccount\xxx@xxx.com:的密码的文本时输入你的微软账户密码并回车(密码不会显示) 如果密码正确 稍后你将会看到一个Windows关于信息框 关掉它既可 这条命令的意思是 以xxx@xxx.com的身份运行winver程序 在完成后它即可以在本地生成关于该账户信息的缓存 接下来即可在客户端(控制端)输入对应地址链接 用户名为MicrosoftAccount\你的邮箱 密码为微软账户密码 如果一切顺利 在建立连接后 即可弹出证书验证框(如果以前从未链接此计算机) 确定即可 稍等即可进入远程桌面 对于伸手不看理论党的直白概括: 被控端: 打开运行框输入cmd回车 在cmd输入runas /u:MicrosoftAccount\你的邮箱 winver并回车 在出现新的文本时输入微软账户密码并回车(密码不会显示的) 关闭新弹出的窗口及cmd 控制端: 打开rdp客户端 输入计算机的地址回车 用户名:MicrosoftAccount\你的邮箱 密码:微软账户密码 回车后保存证书即可链接 您好,这是我转自B站的评论,不知道这个方法是否具有普遍性来辅助我们用同一个账号进行远程控制