为64位设备驱动程序公开32/64位DLL API?

我打算为64位平台(即Win7)制作一个设备驱动程序,我也想公开可以分发给编写应用程序的用户的DLL中的设备API。

问题是,我怎样才能为32位和64位应用程序构build这样的DLL? 这里的问题实际上只有大约32位一个。

我可以写32位的DLL和编译它以及64位? 或者我真的需要一些IPC来包装64位DLL,以便32位应用程序可以间接调用设备驱动程序?

32位和64位之间的转换应该在现有的用户内核层进行。 您的DLL将使用IOCTL命令与驱动程序进行通信,而当驱动程序是64位时,32位DLL必须使用64位IOCTL结构。

没有必要添加第二个IPC层。