问题标签 [device-manager]
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.
networking - Slow internet connection requires forced reset of network adapter?
Computer is connected directly to modem via ethernet. Upon boot, an online speed test is consistently 10 Mb/s. This is significantly less than my service is supposed to be (50+). As soon as I disable and enable the ethernet adapter I can run another speed test at 60+ Mb/s. The connection appears to be stable at this point.
Additional information: Ethernet adapter is Realtek PCIe GBE Family Controller. Drivers are up to date. Tried rolling back drivers. Tried an old modems. Tried flushing DNS, resetting winsock, resetting IP. Tried changing the adapters speed from auto negotiation to 100 full.
I've got nothing. For the time being I've just got a batch file (using devmanview.exe) that resets the adapter on delay after boot but I'd like a more elegant solution. I've had hilarious conversations with my ISP support where I realize this is no longer on their script so they're no help.
Thanks for any help.
android - 设备管理员不会在 Android 电视盒上激活
我正在尝试在我的 Android 电视盒上启用设备管理员。我去设置/安全/设备管理员和Android设备管理器在那里,但它没有被选中。如果我选中该框以激活它,它会要求我激活它,但这样做之后,该框保持未选中状态并且 Android 设备管理器未激活。任何可能有帮助的想法/设置/apk 更新?
windows - Windows 设备:获取 UVC 网络摄像头的给定 IMFActivate* 的“位置”字符串
当转到 Windows 的“设备管理器”并单击(几乎)列表中的任何设备时,“常规”选项卡中的一条信息称为“位置”。那是一个字符串,可以是:
- 人类可读,例如“在 NVIDIA GeForce GTX 1080 上”
- 半有用的,例如“位置 0(内部高清音频总线)”或“PCI 总线 9,设备 0,功能 0”
- USB 位置,例如“Port_#0004.Hub_#0015”甚至是“0009.0000.0000.004.000.000.000.000.000”
该信息可通过 Windows 的统一设备属性模型API 获得。
我正在寻找的是从给定IMFActivate
对象中获取该信息。
有没有办法这样做?我找不到如何从该激活对象获取“设备”信息。我拥有的唯一数据是“符号链接”(在我的例子中,这个字符串:),\\?\usb#vid_04b4&pid_8888&mi_00#9&4fe28be&0&0000#{e5323777-f976-4f5b-9b55-b94699c46e44}\global
但该链接的格式与我在“位置”中看到的字符串完全不同。
因此我的问题是:如何获取设备的“位置”字符串,给定它的IMFActivate
对象?
更新
这是我用来“转换”符号链接的代码,由提供IMFActivate
的设备 id 字符串提供,可由 setup-api 函数识别,然后提取“位置字符串”:
更新 2
devmgmt.msc
以下是“声音、视频和游戏控制器”下的 3 个音频输入设备:
- MS LifeCam Cinema (TM),位置:0000.0014.0000.013.003.000.000.000.000(符号链接
\\?\SWD#MMDEVAPI#{0.0.1.00000000}.{751fe058-cef2-4d28-bbeb-e438981938d7}#{2eef81be-33fa-4800-9670-1cd474972c3f}
:) - MS LifeCam Studio (TM),位置:0000.0014.0000.013.004.004.000.000.000(符号链接
\\?\SWD#MMDEVAPI#{0.0.1.00000000}.{59267d2e-940b-45f5-8655-45372787bd85}#{2eef81be-33fa-4800-9670-1cd474972c3f}
:) - SUB2r USB 3.0 高清网络摄像头,位置:0009.0000.0000.004.000.000.000.000.000(符号链接
\\?\SWD#MMDEVAPI#{0.0.1.00000000}.{26a4f608-cbd8-4206-b958-d57ee6847153}#{2eef81be-33fa-4800-9670-1cd474972c3f}
:)
所有 3 个都是 USB 设备,调用时会列出所有 3 个,MFEnumDeviceSources
但它们的“符号链接”不会解析为硬件设备。
device-driver - 如何使用设备管理器上的 INF 文件更新 libusb 驱动程序
我正在开发一个程序,用于使用 libusbdotnet dll 在设备和 pc 之间进行通信。该设备在 USB 类中使用 CDC(通信设备类)。
我从 libusbdotnet inf 向导创建了一个 INF 文件。我用设备管理器上的 inf 文件更新了驱动程序。但在某些计算机上,inf 文件无法更新。并给出此错误:“您指定的文件夹不包含与您的设备兼容的软件驱动程序。如果该文件夹包含驱动程序,请确保它设计为适用于基于 x64 的系统的 Windows。 ”
但是一些 64 位计算机(W7、W8 或 W10)接受 inf 文件。所以它似乎与操作系统或系统类型无关。
我从一些来源尝试了很多关于这个错误的解决方法。但我没有找到正确的解决方案。
你怎么看这个问题?
c++ - 如何知道设备是否已被用户明确禁用?
使用设备管理器,用户可以显式启用/禁用设备,如下图所示。
对于给定的设备,我想知道它当前是否处于用户禁用/启用状态。
我尝试了以下方法
CM_Get_DevNode_Status(&status, &problem, data.DevInst, 0);
我希望存在DN_STARTED
,或者DN_DRIVER_LOADED
会告诉我。但是,即使操作系统正在加载/卸载驱动程序,当设备连接/断开连接时,这些也可能为零。例如,启用并加载驱动程序的设备。DN_STARTED
将是1
,但是当我们断开设备连接时,它会在设备条目从设备管理器中删除之前设置为零。SetupDiGetDeviceRegistryProperty(..., SPDRP_INSTALL_STATE, ...)
我虽然状态CM_INSTALL_STATE_INSTALLED
应该意味着设备已启用。但即使对于禁用的设备,该函数也会返回此状态。使用 WMI 我能够获得所需的信息,但我在 PowerShell 中使用了 wmi。我不想使用 wmi,因为它很难在原生 c++ 中实现。我使用了以下查询。
Select Name, Availability, ConfigManagerErrorCode, ConfigManagerUserConfig from Win32_PnPEntity where Name = 'NVIDIA Quadro M1000M'
上面查询中的 ConfigManagerErrorCode,如果设置为 22,表示设备已被禁用,21 表示 windows 正在移除设备
我正在寻找一个非 wmi 解决方案。
windows - 从命令行启用/禁用 Windows 10 中的设备
我有一个特定的硬件,我想在每次 Windows 重新启动时禁用并重新启用它。我创建了一个应该执行此操作的批处理脚本,然后运行我的程序:
首先我不确定devcon.exe
这是否是一个合适的应用程序,因为我根本没有编写 Windows 脚本的经验。
但是,我注意到这些命令并不能完全完成这项工作,因为我的runMyWindows.exe
程序无法正常工作,直到我转到 Windows 设备管理器并手动禁用和重新启用该设备。
我在这台机器上只有 1 个用户在“管理员”组中,除了双击.bat
文件之外,我没有以任何特殊方式运行此脚本,或者在重新启动的情况下,它从启动文件夹 ( C:\Users\oxxo\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
) 运行。
有没有办法在我的批处理脚本中正确执行此操作,该脚本应该在 Windows 启动时自动运行?
android - 我的手机无法连接到电脑
在上周,我一直试图将我的魅族 m2 手机连接到我的电脑以进行调试(从 android studio 运行应用程序),但没有成功。
我已经USB
在我的设备上启用了我的调试模式,我已经将它连接为 onMTP
而不是PTP
,我还查看了我的计算机的设备管理器,发现该设备未列在其他设备类别下,老实说,我不知道他在哪里列出。
另外,我打开了一个android studio并按下run-app
按钮,但我的手机没有被android studio识别。
请帮我解决这个问题。
visual-studio-2013 - 在 Windows 7 SP1 上手动安装 KMDF Sample-Driver
我刚刚在 Windows 7(64 位)计算机上使用带有 WDK 8.1 的 Visual Studio 2013 Express 创建了一个 KMDF 示例驱动程序。当我构建解决方案时,我没有收到任何错误。因为我想稍后检查我的驱动程序是否正在运行,所以我将通用调试线插入到我的 DriverEntry-Routine 中:
通过 Windows 设备管理器,我可以通过添加旧设备手动安装驱动程序。当然,Windows 会抱怨驱动程序未签名的事实。但无论如何,稍后我可以在设备管理器中看到已安装的驱动程序,前面有一个警告符号:
使用 DebugView(来自 Sysinternals Suite)我正在等待我的调试消息出现,但没有任何反应。我在驱动程序安装期间收到的唯一调试消息是:
所以这让我想到为什么我的驱动程序没有运行?我想这与司机的签名有关,但我也不知道如何签名。或者也许 DebugView 是错误的工具?
windows - Qt如何打开设备管理器
我正在尝试从 Qt Windows 应用程序上的按钮打开设备管理器。
我尝试了什么:将插槽/信号分配给按钮。和方法:
但是当我点击它时没有任何反应。单击的 btn 将显示在控制台中。
编辑:我也试过
但也无法打开。