草庐IT

MANAGE_USB

全部标签

windows - 如何让 USB 设备加载我的功能驱动程序?

我写了一个usb功能驱动。如果我想让插入我计算机的任何USB设备加载此驱动程序而不是其真正的驱动程序,我应该怎么做?我只知道如果在总线驱动程序创建pdo时更改vid/pid,我可以做到。但我不知道是否有简单的方法可以做到这一点。如何改变总线的行为?过滤器驱动程序可以做到吗?平台是Windows。 最佳答案 最好的办法是实现一个HID(HumanInterfaceDevice)司机。通过遵循HID准则,您需要的大部分功能都已得到支持,而无需编写自定义设备驱动程序。这里有一些帮助您入门的链接:使用HID类简化了编写USB设备驱动程序的工

windows - 在 Mac 10.6/7/8/Windows XP/Vista/7 上自动打开 USB 驱动器

我正在创建一个FAT32格式的USB内存棒/驱动器来运送产品。我们希望它的表现更像我们制作的混合CD/DVD:在Mac10.6或更高版本上插入磁盘,驱动器将打开并显示一个窗口,其中包含应用程序。我们可以通过DMG或CD完成此操作,但USB驱动器似乎不想遵守bless命令。在Windows上,我们设置了一个autorun.inf。在XP上,它不显示图标、标签或打开指定的文件。我知道您不能让WindowsVista和Windows7在默认情况下自动打开某些内容或将条目添加到自动播放列表,但它仍应显示音量标签和图标。这是我的autorun.inf:[AutoRun]Action="Insta

windows - USB 驱动器上的巧克力设置

我是第一次尝试设置Chocolatey。我的最终目标是能够将软件包安装在USB驱动器上,该驱动器在我的计算机中显示为F:所以遵循thedirectionsintheChocolateywiki,我在F盘创建了一个名为Chocolatey的文件夹,并设置了一个环境变量ChocolateyInstall为F:/Chocolatey。我按照基本说明打开命令提示符,然后粘贴以下内容。@powershell-NoProfile-ExecutionPolicyunrestricted-Command"iex((new-objectnet.webclient).DownloadString('htt

c++ - 如何以编程方式检测 PC 是否具有 USB3 功能?

这看起来应该是一个简单的问题,但我不确定如何最好地解决它。我看过一些关于如何检测连接的设备是USB2还是3的帖子,但我需要知道USB3端口是否可用,即使没有连接任何设备。一种解决方案是遍历注册表中的“SYSTEM\CurrentControlSet\Services”键并与已知USB3服务的预设列表进行比较。我希望有更准确的东西,比如IOCTL调用。我可以实现C++(首选)或C#。在此先感谢您的帮助。 最佳答案 我是这样实现的。不是我正在寻找的解决方案。这基本上会告诉我系统上是否存在USB3.0驱动程序。它不会检测系统上的硬件是否包

windows - 24 位 USB 采样率支持

我的问题与这个问题非常相似:Link,但我无权发表评论。我将PIC32实现为声卡,现在我有一个可用的USB音频流,支持16位32kHz和48kHz采样率。我现在想将位深度更改为24位,因此我将USB描述符更改为:bSubFrameSize=0x03,//3bytespersamplebBitResolution=0x18,//24-bitresolution当我执行此操作时,他的位分辨率会按预期更改,但在麦克风的属性中,我可以更改采样频率的下拉菜单是灰色的。我没有更改端点描述符中的任何内容,仍然支持32kHz和48kHz。我的USB拓扑有1个音频控制接口(interface)和几个单元

c# - 在 Windows 将其注册为击键之前拦截 USB 键盘数据

我一直在网上搜索一个非常具体的问题。我正在尝试做的是将两个键盘(普通USBqwerty键盘)通过两个不同的USB端口连接到我的PC,从中我可以选择哪个键盘处于“事件”状态并用于书写,而另一个键盘将用于我的应用程序中的不同命令并且无法使用。基本上拦截/断开Windows读取输入数据并将其视为特定USB端口上的击键的部分,而是给我使用数据。有什么方法最好在C#中执行此操作? 最佳答案 有一篇文章介绍了如何在C#中使用RawInput来检测连接了多个键盘时击键的来源。这可以帮助您在C#应用中配置一个键盘用于正常打字,另一个键盘用于特殊用途

java - usb4java:无法进行数据传输

我正在尝试使用usb4java(低级API)与USB连接的科学仪器进行通信,该仪器在Windows上设置为HID设备(x86和x86_64)。有一个非常古老的C++应用程序可以正常工作,但出于各种原因,我正在尝试用纯Java替换它。我可以获得设备描述符并确定接口(interface)/端点,但异步传输永远不会发生(由DeviceMonitoringStudio检查)并且永远不会调用回调。usb4java没有抛出任何异常,并且不知道我是否可以访问libusb级别的任何日志(如果可能的话)。在处理硬件方面,我是一个完全的新手,所以它很可能是我所缺少的一些非常基本的东西。只有一个端点,我不确

windows - Kinect USB 3.0 经常重连

我正在开发Kinect应用程序,在Windows10PC上使用Kinect2.0forXboxOne。现在我在使用新电脑时遇到了问题。使用KinectStudio或任何示例程序测试Kinect,Kinect不断重新连接,就好像您将拔出USB电缆并重新插入一样。如果Kinect正在运行,我会获得完整的30fps,但在连接中断之前,大多数情况下仅持续约10秒。USB3端口没有插入其他设备,我尝试了所有端口。计算机有Intel8系列/C220系列USB芯片组,我更新并重新安装了所有驱动程序。Kinect配置验证程序显示usbController存在问题:“检测到支持的USB3.0端口带宽未知

c++ - 检测正在插入的 USB 驱动器 - Windows 服务

我正在尝试检测插入到Windows服务中的USB磁盘驱动器,我已将其作为普通Windows应用程序完成。问题是以下代码不适用于卷。注册设备通知:DEV_BROADCAST_DEVICEINTERFACEnotificationFilter;HDEVNOTIFYhDeviceNotify=NULL;::ZeroMemory(¬ificationFilter,sizeof(notificationFilter));notificationFilter.dbcc_size=sizeof(DEV_BROADCAST_DEVICEINTERFACE);notificationFilter.

windows - 是否可以将 Windows 设置为在插入符合 HID 标准的 USB 设备时自动启动应用程序?

我有一个自定义的HID兼容USB设备。我想将Windows设置为在插入此设备时启动应用程序。这可以通过配置设置实现吗?或者我是否需要编写一个应用程序(例如,驻留在Windows启动时系统托盘中的应用程序)来检测设备何时插入?我知道我的佳能相机和诺基亚手机在插入时可以启动应用程序或自动播放,但它们不是HID设备。 最佳答案 您应该能够通过监视WMIWin32_DeviceChangeEvent或RegisterDeviceNotification来实现这一点。Win32_DeviceChangeEvent:http://msdn.mi