c# - 将手机注册为 HID(鼠标)

标签 c# windows-mobile bluetooth device-driver hid

给定一个带蓝牙的 Windows Mobile 6.1 智能手机,我想将它注册为鼠标。

基本上我现在做的:

  • 使用 Guid {00001124-0000-1000-8000-00805f9b34fb} 在设备上启动蓝牙服务
  • 从台式电脑连接到设备。

结果:

  • 检测到设备有所有服务,包括 HID 服务,但没有驱动程序

当前的解决方法:

  • 连接到蓝牙服务并读取数据流的桌面应用程序

所需的解决方案:

  • 将服务注册为蓝牙鼠标并从手机发送鼠标事件。

问:

  1. 如何获得所需的解决方案?
  2. 我必须为它编写一个 inf 文件吗?
  3. 我必须向蓝牙服务添加额外信息吗?
  4. 如何通过此服务发送鼠标点击?

目前,我正在使用 .NETCF 3.5 和来自 .NET CF SDK 的 Microsoft.WindowsMo​​bile.SharedSource.Bluetooth 程序集在 C# 中进行开发,但如果需要,在 C++ 中工作也没有问题。

最佳答案

您不需要 HID 的驱动程序。虽然我没有通过 bt 发送鼠标点击,但我已经通过通用 HID 驱动程序发送了其他奇怪的东西。所以:

  • 您不需要 .inf 文件或新的驱动程序。
  • 蓝牙只是您的交通工具(有线替代品),因此“不应该”在那里做额外的工作。除了可能将这两个设备配对。
  • 我认为发送点击次数是通过将形状正确的数据包发送到 PC 来完成的。

看linux代码指向in this post有关数据包的详细信息。显然你已经看到了this用于发送数据。

享受 NetCF 带来的乐趣!

关于c# - 将手机注册为 HID(鼠标),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1891647/

相关文章:

ios - AVAudioSession 在某些蓝牙设备上不工作

c# - 为存储过程创建可重用的 Linq To SQL

android - 从 http header HTTP_USER_AGENT 可靠性发现 android ios windows mobile?

c# - dd-MMM-yyyy 和 dd-MMM 的正则表达式?

android - 在早期操作系统版本 iPad/Android(和 Windows)上测试网站

c++ - Windows Mobile 6 SDK 的智能指针

android - 获取蓝牙设备 离开连接

java - 与 SPP 蓝牙设备配对导致 Samsung Galaxy S (Android 2.2) 崩溃

c# - 如何在 MVVM WPF(c#) 中编写这些特定行?

c# - LoadLibrary() 在 C# 中返回 0