1
[DllImport("winusb.dll", SetLastError = true)]
internal static extern Boolean WinUsb_ReadPipe(IntPtr InterfaceHandle, Byte PipeID, 
ref Byte Buffer, UInt32 BufferLength, ref UInt32 LengthTransferred, IntPtr Overlapped);

我正在使用 API 从 USB 设备读取异步数据,它大部分时间都在 32 位操作系统中工作。但在 64 位系统上大部分时间都失败了。

如果这是 API 定义、固件或其他问题,有人可以指导我吗?

4

1 回答 1

0

除了导入之外,您没有显示任何代码。我的直接问题是您是否链接到 64winusb.dll位系统上的 64 位版本?如果您的应用程序经过编译Any CPU,将在 64 位操作系统上以 64 位模式运行,并且无法 P/Invoke 到 32 位库中。

于 2010-10-27T13:48:44.143 回答