2

上下文:
我有一个在 Windows 10 环境中与扫描仪配合使用的 C# 应用程序。
在某些情况下,用户会从他们的本地计算机连接到运行应用程序的远程计算机。
该应用程序显示本地和远程可用的扫描仪列表。
我需要应用程序能够识别扫描仪是本地的(连接到用户所在的计算机)还是远程的(连接到运行应用程序的计算机)。

我尝试过的:
使用 WIA 库中的DeviceManager对象,我能够从连接到计算机的每个设备中获取属性列表 (DeviceInfo.Properties)。
一个属性PnP ID String始终为远程扫描仪显示“&rev”。

本地扫描仪的 PnP ID 字符串示例: PnP ID 字符串,本地扫描器

对于远程扫描仪: PnP ID 字符串,远程扫描仪

使用来自不同品牌(即富士通、惠普)的多个扫描仪已观察到此行为。
为远程扫描仪找到的“tsusb-session”字符串起初看起来很有趣,但在使用 HP 扫描仪进行测试时却不存在。

此外,恢复的属性之一是远程设备 ID,但它始终显示为空白。

“&rev”是识别远程设备的可靠方法吗?如果没有,是否有准确的方法来做到这一点?

4

0 回答 0