问题标签 [device-instance-id]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
853 浏览

windows - 如何使用 SetupDiGetClassDevs() 函数在 Windows 10 上访问 GPIO、I²C、SPI 和 PWM,GUID 在这里的重要性是什么?

如何在 Windows 环境下访问 GPIO、I²C、SPI、PWM 等?

目前我有两个英特尔 NUC5i5MYBE 主板。一块板有 WindRiver Linux,另一块板有 Windows 10 Enterprise。

在 Linux 上,我在访问上述所有内容时都没有任何问题,但在 Windows 环境中存在问题。

在Windows中,我的目标是利用CreateFileWindows的功能来打开这样的界面。

但在调用此函数之前,我需要提供此函数的设备路径。为此,我的目标是使用以下函数以及数据结构来找出设备路径。

SetupDiGetClassDevs()

SetupDiEnumDeviceInterfaces()

SetupDiGetDeviceInterfaceDetail()

HDEVINFO

SP_DEVINFO_DATA

PSP_DEVICE_INTERFACE_DETAIL_DATA

但是主要的问题和未知的事情是如何将 GUID 提供给 SetupDiGetClassDevs 作为第一个参数?

SetupDiGetClassDevs 的 Windows 原型如下。

0 投票
5 回答
16365 浏览

ios - 通过代码强制更改/更新 Firebase 通知令牌或实例 ID?

我应该怎么做才能更改或请求 firebase 中的令牌?firebase 根据设备信息生成的唯一令牌。

0 投票
1 回答
519 浏览

python - 在 Windows 计算机中嵌入 Google 助理 - 运行示例代码时未生成设备实例 ID

我正在尝试按照设置硬件和网络访问(Google Assistant SDK) 中的说明在 Windows 计算机上安装 Google Assistant。

除了最后一步,我已经完成了所有的工作。我正在运行示例代码。https://developers.google.com/assistant/sdk/guides/service/python/embed/run-sample?refresh=1

在这最后一步中,应该生成一个“设备实例 ID”,但这不会发生。看截图:

在此处输入图像描述

错误消息指出客户端类型需要指定为 SDK_LIBRARY 或 SDK_SERVICE。但是,在注册模型时,不允许使用“--client-type [SERVICE|LIBRARY]”选项(请参阅注册工具帮助)。

如何运行示例代码...以便生成“设备实例 ID”?

我的问题似乎与其他用户报告的问题相似。然而,该用户报告了 Raspberry Pi 的问题,而我报告了 Windows 计算机的问题。请参阅Raspberry Pi 和 Google Voice 客户端类型

0 投票
3 回答
8232 浏览

windows - Windows 上的 USB 实例 ID 对设备来说是唯一的吗?

我正在尝试在 Windows 系统上唯一识别 USB 设备。由于序列号是可选的(在大多数设备上为空),我正在查看实例 ID。领域就是这样USB\VID_03F0&PID_094A\6&24b73976&0&2

我已经知道如果我将同一个设备插入不同的端口,这个 ID 会发生变化,但这对我来说没问题。问题是:如果我使用相同的设备(在我的示例中为鼠标)并将其插入,它会获得相同还是不同的 Instance ID ?

我做了一些研究,似乎没有人知道 VID 和 PID 背后的部分是什么。它们似乎确实可以识别端口和/或集线器,但如果我将不同的设备插入同一个插槽,我不仅会看到不同的 VID 和 PID,还会看到不同的垃圾。例如,这是一个插入同一端口的键盘:USB\VID_046D&PID_C328&MI_00\7&3f9ff46&0&0000

Microsoft 文档和此处的相关问题均未回答此问题。

如果我有两个类似的鼠标(或键盘,或其他),即相同的制造商和型号,如果我将它们插入同一个端口,它们会得到相同还是不同的实例 ID?

我是否有机会唯一识别特定设备(不仅仅是型号)?

0 投票
1 回答
274 浏览

c# - C#:获取设备实例句柄时出错

在我的 C# 代码中,我尝试使用 C++ 函数:CM_Locate_DevNodeWCM_Open_DevNode_Key(使用pinvoke)。我的代码看起来像这样:

调用 to 后CM_Locate_DevNodeW变为devInst,1cmStatus0 = CR_SUCCESS。但调用CM_Open_DevNode_Key失败。我不知道是否CM_Locate_DevNodeW返回CR_SUCCESS但将不正确的数据放入其中devInst?('1' 看起来不像真正的设备实例句柄......)

或者也许调用CM_Open_DevNode_Key是错误的?

我声明了这样的函数:

任何帮助,将不胜感激!

0 投票
1 回答
2781 浏览

c++ - 获取 USB 设备 C++ 的父信息

我正在开发一个 MFC 工具来检查连接的 USB 设备的一些驱动程序信息,例如位置信息、父级、硬件 ID 等。我已经获得了我想要的所有其他信息,但我一直在获取设备父级信息。

我使用Setupapi.dll在我的代码中获取设备信息。使用SetupDiGetClassDevs函数获取 USB 设备信息句柄。使用SetupDiEnumDeviceInfo函数获取特定设备信息数据。使用SetupDiGetDeviceRegistryProperty函数 获取设备描述和硬件 ID 。

获取 USB 设备的父级信息对我来说非常有用。请帮忙提供一些线索。

请查看图片

0 投票
1 回答
1126 浏览

usb - 无需重启即可重启 USB 端口 (DevCon)

不必要的背景信息:我购买了一个新的 USB 麦克风 (Samson Q2U),我遇到了一个问题,每次我(重新)启动我的电脑时,麦克风都无法工作(它确实通电),直到我拔下并重新插入USB 端口的麦克风。

现在进入重要部分:我想禁用/启用或删除/添加插入麦克风的 USB 端口devcon

我尝试了devcon restartand devcon remove(后跟devcon rescan),但两者似乎都需要重新启动系统才能运行,这当然不是我想要的,因为在重新启动系统时会发生错误。

我已经尝试使用麦克风插入的实际 USB 端口、麦克风本身的实例路径(在设备管理器 > 音频输入和输出下)以及 USB 端口所在的 USB 根集线器。使用 USB 端口和 USB Root Hub 都需要重新启动系统,因此它对我无效。尝试使用麦克风本身,它重新启动 bur 并没有解决我的问题。

是否有任何方法可以禁用/启用或重新启动插入麦克风的 USB 根集线器或 USB 端口而无需重新启动devcon?或者除此之外的任何其他方法devcon可能有效?我正计划制作一个脚本来解决我的问题并将其放在启动文件夹中。

我知道这个论坛上的其他几个主题与我的问题大致相同,但这些主题并没有解决我的问题而且也很老,所以我想就这个主题发表一个新主题。

0 投票
1 回答
1122 浏览

android - 如何在 Android 10 中读取设备信息?

我正在尝试使用 TelephonyManager 读取 Build.SERIAL 和 DeviceId 等设备信息。在 Android 9 及更低版本中,我能够毫无问题地访问所有这些信息。

当我尝试在Android 10中读取设备信息时收到以下异常

GetDeviceId:用户 10727 不满足访问设备标识的要求。

此信息对于我的应用程序的安全性非常重要。我需要一种方法来识别具有不可更改设备身份的设备。

0 投票
2 回答
843 浏览

android - 考虑到没有恢复出厂设置,我应该使用 ANDROID_ID 作为设备标识吗?

我正在开发一个 Android 应用程序,其中单个用户只能通过使用相同的 Gmail 帐户(用于登录)在一台设备上使用该应用程序。如果用户想在不同的设备上登录应用程序,他将无法使用相同的 Gmail 帐户进行登录。我在我的应用程序中使用 ANDROID_ID 来使用以下命令识别唯一设备 -

在这种情况下它是正确的选择吗,因为我在开发者网站上看到

文档链接-

或者有没有其他方法可以完成上述操作?提前致谢。

0 投票
0 回答
35 浏览

vb.net - vb.net 查找连接到计算机的设备的“设备实例路径”

我希望我在 Vb.Net 中编写的应用程序受到 HID 设备的保护。我想知道我安装在计算机上的条形码扫描仪设备的 HID 号。我想借助我在 Vb.Net 中创建的 Form1 上的一个按钮,将连接到我的计算机的条码扫描仪设备的 HID / VID 编号输入到 textbox1 中。如何进行 vb.net 编码?因此,当我按下按钮时,我希望连接到计算机的设备将“设备实例路径”代码带入文本框中。

谢谢你的帮助。