问题标签 [usb]

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 投票
3 回答
405 浏览

c# - Why can't my software initialize hardware on a different motherboard?

I am not a developer, but I think that my question is interesting enough (and I am desperate enough) to post here on stackoverflow

My company uses a program written in C# to drive a kiosk PC that uses .Net 2.0 SP1 and a USB signature pad. The signature pad is a HID that uses the generic Microsoft HID driver.

We tried to install our software on a kiosk PC that uses a different brand of motherboard than we previously used. We moved from a Gigabyte board to an ASUS board. Other than the brand, the specs are identical, same north bridge, same south bridge, same CPU, same host controllers etc. Also, our install procedure is documented and hasn't changed in months.

On the new motherboard, the signature pad is recognized as a HID, installs without an issue, and the manufacturers software can run the device, but our software does not recognize that device is even connected. The only thing that has changed is the motherboard brand. The manufactures software that can initialize the device is not written in C#.

Any thoughts, suggestions, or solutions are welcome!!!!

0 投票
3 回答
5848 浏览

windows - 对 USB 传输电缆进行编程/与 USB 设备驱动程序通话

如何以编程方式从 Windows访问 USB 传输电缆(例如 Belkin 的Easy Transfer Cable )?

我对libusb-win32很熟悉,但据我所知,将它与较新的设备和 Windows Vista 一起使用似乎不太确定。

我知道Windows Easy Transfer可以做到这一点。如何编写与 Windows 轻松传送功能相同的代码?

如果没有关于如何做到这一点的罐头文档,我愿意做一些挖掘,但我不知道从哪里开始。如何查看 Windows Easy Transfer 的操作以了解它是如何操作的?我看到 Windows 甚至在设备管理器“传输电缆设备”中为传输电缆提供了自己的类别。我如何与这些驱动程序之一进行低级通信?

0 投票
2 回答
1596 浏览

macos - 杀死 USB 端口的电源

有没有办法以编程方式关闭 Mac 上的电源或关闭 USB 端口?

0 投票
4 回答
39887 浏览

c# - 使用 USB 条形码扫描仪读取条形码,同时忽略键盘数据输入,而扫描仪产品 ID 和供应商 ID 未知

有没有办法在忽略键盘且不知道 USB 扫描仪的 PID 或 VID 的情况下从 USB 条形码阅读器读取?我知道有一种方法可以通过使用 USB 扫描仪的 VID 和/或 PID 来区分 USB 扫描仪输入和键盘输入;这是使用来自http://nicholas.piasecki.name/blog/2009/02/distinguishing-barcode-scanners-from-the-keyboard-in-winforms/的代码完成的 但是还有另一种解决方案来区分键盘和 USB 扫描仪没有将扫描仪的 VID 或 PID 放在配置文件(或源代码)中?不想将各种 VID 或 PID 放在配置文件中的原因是,正在开发的应用程序将部署在许多笔记本电脑上,并附有任意类型的扫描仪。

另外,我不想使用将输出的开始和或结束序列配置扫描仪,因为扫描仪也被同一台机器上的其他软件使用,我不想更改代码在其他软件上。出于前面提到的相同原因,我也不想将条形码阅读器编程为串行模式。

0 投票
1 回答
2980 浏览

usb - 通过 USB 连接的调制解调器:可以嗅探“AT 命令”吗?

有人可以确认我是否可以使用 USB 嗅探来捕获从外部应用程序发送到 HSDPA 调制解调器的“AT 命令”?

0 投票
2 回答
332 浏览

windows - 如何提高 USB 设备驱动程序中的 Tx 性能?

我使用 Windows 驱动程序模型 (WDM) 为 Windows 2000 及更高版本的 USB 1.1 设备开发了设备驱动程序。

我的问题是使用 64 字节批量传输时 Tx 性能非常差。根据使用的 USB 主机控制器,最大数据包吞吐量为每秒 1000 个数据包 (UHCI) 或 2000 个数据包 (OHCI)。我在 Linux Kernel 2.6 上开发了一个类似的驱动程序,每秒大约 5000 个数据包。

Linux 驱动程序使用最多 10 个异步批量传输,而 Windows 驱动程序使用 1 个同步批量传输。因此,比较这一点可以清楚地表明,虽然性能如此糟糕,但我已经尝试过异步批量传输,但没有成功(没有性能提升)。

有没有人有一些提示和技巧来提高 Windows 的性能?

0 投票
5 回答
36279 浏览

java - 如何使用 Java 通过 USB 端口与设备通信?

我最近才学习 Java,并尝试通过 USB 端口连接与设备通信。我已经将 C# 与 OpenNETCF 一起使用,它允许我通过 USB 端口在设备上发送文件和检索文件;我怎样才能用java实现这一点?

我在 stackoverflow 线程上搜索,如何在 Windows 和 Java 下与 USB 设备通信?,christoffer 的评论是要破解本机代码,但我不太清楚他指的是哪个本机代码 api。RAPI,也许吧?

0 投票
2 回答
1389 浏览

windows-mobile - 如何在紧凑框架中检测插件 USB

我想将一个带有串行端口的跟踪盒连接到一个 Windows Mobile 的 USB 串行端口。当我通过 USB 将 Windows 移动设备与跟踪盒连接时,是否有检测 USB 插件的方法?

0 投票
1 回答
1958 浏览

c++ - RegisterDeviceNotification 返回 NULL 但仍收到通知

我正在使用 RegisterDeviceNotification 来监视 USB 设备的更改,使用 WM_DEVICECHANGE 事件。但是,当我调用 RegisterDeviceNotification() 时,它会为通知句柄返回 NULL,这应该表明它失败了。但是 GetLastError() 返回 ERROR_SUCCESS 并且通知实际上会通过。
当我稍后需要取消注册通知然后重新注册时,这会造成真正的麻烦。由于它返回的句柄为 NULL,我实际上无法重新注册。如果我尝试,RegisterDeviceNotification() 就会挂起。

我的代码如下:

m_hDriver 是我之前打开的驱动程序的句柄,在连接到设备(USB 条形码扫描仪)时。

有什么想法我在这里做错了吗?

0 投票
4 回答
1818 浏览

c++ - 将文件写入 U 盘会导致意外删除时文件损坏/锁定

我正在编写一个后台应用程序,以将文件循环复制到带有“优化以快速删除”策略集的 USB 记忆棒。但是,如果在此过程中(特别是在下面的 WriteFile() 调用中,它返回 ERROR FILE NOT FOUND)中删除了存储棒,则应用程序挂起,则驱动器将永久无法从任何其他应用程序访问,并且 PC 无法关闭/注销/重新启动等。所有正在运行的 Windows 资源管理器实例也会因此挂起。

我已将问题追溯到移除棒后进行的 CloseHandle() 调用并发生上述错误。几乎就好像 CloseHandle() 无限期地阻塞在某个地方的驱动程序中,因为棒不再存在?无论如何,如果 WriteFile() 返回 ERROR FILE NOT FOUND,我通过简单地跳过 CloseHandle() 调用来解决这个问题。但是,这会导致另一个问题,即文件每隔一段时间就会被不可恢复地损坏,修复它的唯一方法是使用 chkdsk 或重新格式化存储棒。

请注意,这只发生在 XP(SP2 和 3)上,Vista 似乎没有遇到此问题。代码片段如下:

我已经尝试了 CreateFile() 的几乎所有标志组合都无济于事。有没有人以前见过这个或有任何好主意如何避免发生这两个问题中的任何一个。我看到的驱动程序问题是否已在 vista 下静默修复?

谢谢你的帮助。