我正在尝试通过 PowerShell 自动化许多耗时的任务,我必须执行这些任务来制作新的 VM 模板,其中之一是从 VM 中删除所有 NIC 并清理不存在的设备的设备管理器。
从 VM 中删除 NIC 后,我尝试使用以下代码片段来清理设备管理器,它们执行相同的操作。
wmic nic where "(servicename is null)" delete
Run Code Online (Sandbox Code Playgroud)
gwmi win32_networkadapter | ?{$_.ServiceName -eq $null} | rwmi
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,我都会收到错误“提供程序无法进行尝试的操作”。查看 WMI-Activity 的事件日志似乎没有帮助:ResultCode = 0x80041024; 可能的原因 = 未知。
有没有人能够做类似的事情来删除不存在的设备或能够找到上述命令的问题?
编辑:我尝试使用 DevCon 删除设备,但它似乎只适用于现有设备。我现在正在梳理注册表,看看是否有一个特定的键或一组键,如果删除会从设备管理器中删除 NIC。