【问题标题】:Powershell to control external Windows DevicesPowershell 控制外部 Windows 设备
【发布时间】:2018-02-15 13:14:03
【问题描述】:

我有一个条形码扫描仪 Motorola MC9090,我通过 USB 连接到我的 PC (Win10 64 位)。 我安装了一个 Windows Mobile 设备中心,可以很好地识别这个设备,我可以通过 GUI 完成我需要做的所有事情。

我想编写一个 PS 脚本来将一些文件从我的 PC 复制到设备。 Win Explorer 中的设备名为 "WindowsCE",设备上的文件夹之一是 "Application"。我尽我所能在 powershell 中看到该设备,但没有运气...Start WindowsCE\Application 不起作用...

当我运行此Get-PnpDevice -FriendlyName WindowsCE -PresentOnly 时,我会在扫描仪连接到我的 PC 时获得设备名称,因此我知道 Powershell 可以“看到”它,但我不知道如何控制设备。

请帮忙!

谢谢,

阿不福思!

【问题讨论】:

  • 您可能会很幸运地找到如何使用 C# 或 .Net Framework 控制设备。几乎可以肯定任何适用于此的代码都可以移植到 PowerShell。似乎确实有a .Net developer kit
  • 这里的问题是我在公司机器上运行,无法安装任何外部设备。这就是为什么我正在寻找更“直接”的方法......
  • 如果你不能安装任何东西,你可能会被卡住。要在没有供应商工具的情况下执行此操作,您可能必须使用 RAPI or RAPI2
  • 当它连接并打开软件时,它是在 Windows 中显示为实际驱动器还是仅在应用程序中显示?如果软件生成windows驱动,您可以使用PS启动该软件。您还可以使用 com 对象通过 powershell 为您按下按钮和东西。
  • @Sambardo - 当扫描仪连接到我的电脑时,它在 C:\ 驱动器旁边显示为“设备”,它被称为 WindowsCE。我试图在 powershell Start WindowsCe\Applications 上导航到此设备,但错误提示找不到路径。

标签: powershell windows-ce barcode-scanner


【解决方案1】:

所以我可以筛选出插入了哪个设备,但我真的无法进一步了解:

$test = Get-Pnpdevice

($test | where Name -eq 'WindowsCE') | Format-list

这将显示有关 WindowCE 设备的所有信息,但现在您可以将其过滤到是否已插入。

($test | where Name -eq 'WindowsCE') | where Present -eq 'True'

不确定它是否有帮助,但我能做到的就这么多。我希望我们可以在不使用 Windows Mobile 应用程序的情况下传输文件。祝你好运。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-29
    • 2016-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-12
    • 1970-01-01
    相关资源
    最近更新 更多