我们希望支持一些最近停产的硬件。硬件驱动程序是一个普通的 32 位 C DLL。我们没有源代码,并且(出于法律原因)对驱动程序的反编译或逆向工程不感兴趣。
硬件快速发送大量数据,因此通信协议需要非常高效。
我们的软件是本机 64 位 C++ 应用程序,但我们希望通过 32 位进程访问硬件。什么是 32 位和 64 位应用程序相互通信的高效、优雅的方式(理想情况下,不涉及发明新协议)?
解决方案应该在 C/C++ 中。
更新:一些受访者要求澄清这是用户模式还是内核模式驱动程序。幸运的是,它是一个用户模式驱动程序。