2012-09-27 85 views
1

我打算爲64位平臺(即Win7)製作一個設備驅動程序,我也想公開可能分發給編寫應用程序的用戶的DLL中的設備API。公開64位設備驅動程序的32位/ 64位DLL API?

問題是,我怎麼能建立這樣的32位和64位應用程序的DLL? 這裏的問題實際上只有大約32位一個。

我可以只寫DLL,編譯它在32以及64位? 或者我是否真的需要一些IPC來封裝64位DLL,以便32位應用程序可以間接調用設備驅動程序?

回答

1

32位和64位之間的轉換應該在現有的用戶內核層進行。您的DLL將使用IOCTL命令與驅動程序進行通信,而當驅動程序爲64位時,32位DLL必須使用64位IOCTL結構。

沒有必要添加第二個IPC層。

+0

也可以在msdn找到這個 http://msdn.microsoft.com/en-us/library/windows/hardware/ff563897(v=vs.85).aspx – elgcom