- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在编写一个使用 WinUsb.dll 与 USB 设备通信的应用程序。这是一个用户模式库,允许通过在内核中作为其驱动程序安装的 winusb.sys 与设备进行通信。
我正在使用 C++ 和 Visual Studio 2008 编写此应用程序。
header WinUsb.h 位于 Windows DDK 中,因此我添加了包含路径“D:\WinDDK\7100.0.0\inc\ddk”。然后我得到一个错误,找不到 WinUsb.h 包含的 Usb.h,Usb.h 也在 ddk 中,但在不同的目录中,所以我添加“D:\WinDDK\7100.0.0\inc\api”作为一个包含目录。
一旦我添加了这条路径,所有东西都进了厕所,我开始在 stdio.h 和其他一些奇怪的地方出现编译错误。
我真的不想使用 DDK 构建系统和编译器来简单地使用这个 DLL,这是我使用 WinUsb 而不是编写适当的驱动程序的主要原因之一。
有没有人使用 WinUsb.dll 和 Visual Studio 构建过应用程序?
最佳答案
我正在编写一个跨平台的 USB 库,使用 DDK 构建环境会使我的构建过程更加复杂。
WinUsb 旨在供客户端应用程序用于加载 WinUsb.sys 作为其驱动程序的设备。但是,似乎没有打包用于用户模式程序(不包括 UMDF 驱动程序)的 WinUsb header 版本。
我最终做的是将几个支持 winusb.h 的头文件从 DDK 复制到一个私有(private)目录中,然后我在构建期间将该目录作为包含目录引用。
这些是我需要复制的标题:
POPPACK.h
PSHPACK1.h
usb.h
usb100.h
usb200.h
winusb.h
winusbio.h
一旦我将这些包含在私有(private)目录中并与 DDK 中的 winusb.lib 链接,我就能够在 Visual Studio 中编译和运行我的项目。
我不知道我是否会推荐这种方法,因为当 DDK 版本之间的 header 发生变化时它可能会很糟糕,但我会打开一个 CONNECT 错误,看看我是否可以让 MS 为创建一个 WinUsb header 包在客户端用户模式应用程序中使用。
关于c++ - 编译使用 WinUsb 的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1492982/
我正在尝试设置一个 USB 设备,使其在连接到 Windows 8 机器时自动使用 WinUSB 作为驱动程序,如所述 here . 它说: In order for the USB driver s
下午好 WinUSB 在我使用的开发计算机 (Win XP SP3) 上运行良好。我能够将新固件下载到 Cypress FX2,然后在它“重新枚举”后连接到新的 USB 设备。但是,如果我在其他几台计
我想在 C++ 上试验 USB 驱动程序。我正在使用 visual studio express 2013,但找不到 WinUSB 模板。我看过这个guide .但是它适用于 visual studi
我正在编写一个使用 WinUsb.dll 与 USB 设备通信的应用程序。这是一个用户模式库,允许通过在内核中作为其驱动程序安装的 winusb.sys 与设备进行通信。 我正在使用 C++ 和 Vi
我正在使用 Arduino 从网络读取数据并显示它。我可以使用提供的驱动程序轻松地将数据作为串行数据传递,因为它们可以识别 COM 端口,因此我可以将串行数据发送到 COM 端口。 但是,我想使用“真
您能否安装使用 WinUSB 构建的硬件驱动程序以及使用 Click-once 部署的 C# 应用程序? 最佳答案 ClickOnce 无法安装驱动程序。 ClickOnce 只是将文件从服务器位置复
我在 Windows 主机端使用 WinUSB 与我的 WINUSB USB 设备进行通信。我的 USB 设备是全速设备。我能够获取设备句柄并执行 OUT 和 IN 数据传输。 我在 FS WinUS
我正在尝试在我的项目中使用 WinUSB。我关注的指南是 http://msdn.microsoft.com/en-us/library/ff540174.aspx .这篇文章告诉我要包含以下文件:
我正在为包含 WinUSB 设备驱动程序的应用程序创建安装程序。我正在使用带有 difx 扩展名的 WiX 3.5。根据WinUSB how-to我可以创建适用于 x86、ia64 和 amd 架构的
我正在使用 Pi Zero 制作键盘原型(prototype),我计划设置 Pi Zero,使其模拟符合 HID 标准的 USB 键盘(适用于 Windows)。有很多关于如何执行此操作的指南,所以我
我正在尝试使用 LIBUSING 和 C# 通过 USB 与诺基亚 Lumia 手机 (RM-917) 进行通信。 LIBUSB 能够查看设备的信息(pid、vid 等)。但是,我无法成功写入任何端点
我正在尝试使用 CloseHandle 释放 USB 接口(interface)的句柄。我得到的异常(exception)是: System.Runtime.InteropServices.SEHEx
我有一个由 VS2010 生成的通用 SDI 应用程序,我想用它来测试 WinUsb API。我安装了当前版本的 WDK。根据我在其他地方阅读的帖子,我应该能够设置 VS2010 项目包含路径以指向
从 VS12 (update4) 平台工具集 v110 上的工作 C++\CLI 项目切换到 v110_xp 后,我的构建因找不到 winusb.h 而失败。 我可以在工作项目中看到由编译器创建的文件
可能是一些广泛使用 WinUSB API 或用户模式 USB 驱动程序的人的一个问题 - WinUSB API 或用户模式驱动程序是否可以用作 USB 连接的被动观察者,捕获中断通知、控制请求、数
我在遵循 Write a Windows desktop app based on the WinUSB template 的教程时遇到了问题来自微软的MSDN。按照说明,在我们需要创建 WinUSB
我正在尝试从 Winusb 设备获取供应商和产品 ID,并在尝试使用 winusb_GetDesicriptor() 时遇到 accessviolationexception,但无法弄清楚为什么我会收
我需要在 Linux 上实现一个驱动 USB 连接设备(医疗仪器)的应用程序。该应用程序将使用 C++(2011 标准)编写。 当前应用程序是用 C# 为 Windows 10 编写的,并使用为设备枚
我在 Windows XP(x86,服务包 3)上安装 WinUSB 驱动程序时遇到困难。我已按照 Microsoft WinUSB 指南使用 inf 文件、已签名的 cat 文件(使用 Inf2ca
我需要直接通过 USB 与简单的自定义设备通信。我有完整的通信协议(protocol)规范。遗憾的是,设备供应商没有为该设备提供 WinUSB 驱动程序。 根据 https://msdn.micros
我是一名优秀的程序员,十分优秀!