Python 使用PowerShell在设备和打印机中删除然后添加回设备

Python 使用PowerShell在设备和打印机中删除然后添加回设备,python,windows,powershell,automation,powershell-3.0,Python,Windows,Powershell,Automation,Powershell 3.0,背景:在“设备和打印机”(控制面板中)中被列为“Bravia KDL-32EX720”的我的电视变灰,因此停止响应“播放到”DLNA命令。我所知道的唯一解决方案是移除并重新添加电视。过程如下: 转到控制面板->设备和打印机 右键单击“Bravia KDL-32EX720” 单击“删除设备”并在确认提示中单击“是” 删除后,单击同一窗口“设备和打印机”中的“添加设备”按钮 等待可用设备列表出现 电视在这里播放。双击它来添加它 现在,我想使这个过程自动化,因为我必须重复执行* 我了解一些PowerS

背景:在“设备和打印机”(控制面板中)中被列为“Bravia KDL-32EX720”的我的电视变灰,因此停止响应“播放到”DLNA命令。我所知道的唯一解决方案是移除并重新添加电视。过程如下:

  • 转到控制面板->设备和打印机
  • 右键单击“Bravia KDL-32EX720”
  • 单击“删除设备”并在确认提示中单击“是”
  • 删除后,单击同一窗口“设备和打印机”中的“添加设备”按钮
  • 等待可用设备列表出现
  • 电视在这里播放。双击它来添加它
  • 现在,我想使这个过程自动化,因为我必须重复执行*

    我了解一些PowerShell,并且知道可以通过以下命令打开窗口设备和打印机:

    control printers
    
    但是,我不知道接下来该怎么做。请指导我为整个任务编写脚本。我不介意是否提供Python脚本或AutoHotKey。我使用Windows 8 64位Pro。提前谢谢


    *每次我关掉和打开电视,我都要经历这个过程。我已经完成了Microsoft Answers提供给我的所有步骤来解决此问题(运行SFC、重新启动某些服务等),但没有任何一个步骤对我有帮助。

    您可能可以使用Powershell脚本自动执行此操作

    下面是一个hello world UIA Powershell脚本,了解如何开始:

    [Reflection.Assembly]::LoadFile('C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\UIAutomationClient.dll')
    [Reflection.Assembly]::LoadFile('C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\UIAutomationTypes.dll')
    
    # Get the root/desktop element
    $rootElement = [Windows.Automation.AutomationElement]::RootElement
    # Print its Name and ClassName
    Write-Host "Note: In the managed UIA API, the desktop name is empty:"
    "'" + $rootElement.Current.Name + "'"
    Write-Host "Instead, you can identify the desktop by its ClassName, #32769:"
    "'" + $rootElement.Current.ClassName + "'"
    
    除此之外,您还可以从WASP Powershell管理单元中获益,尽管它似乎在一段时间内没有更新:


    此外,由于此项目希望自动化控制面板的UI,因此很可能需要使用“以管理员身份运行”权限执行脚本。如果没有这一点,对控制面板进行更改是不可能的。

    我会屏住呼吸。添加设备向导是动态的(搜索设备),因此我不确定是否可以轻松编写脚本。是否有帮助?否,我无法使用Get device找到电视。我想那是因为我的电视没有显示在设备管理器中。