我想在我的XNA游戏中使用DirectInput但是在引用.dll文件时我遇到了问题。我正在使用Microsoft Visual Studio C#Express Edition。这正是我所做的:
然后我收到以下错误:
如上所述,我想引用Microsoft.DirectX.DirectInput命名空间,但我不知道它在哪个.dll文件中,所以我选择了“d3dref9.dll”。该目录下的每个.dll文件都不起作用,因此我选择的任何一个都给出了同样的错误。现在我已经能够用其他.dll文件来完成这个,但由于某些原因,DirectX不能正常工作。我知道有可能因为this家伙只是看看他代码中的第二行。
我安装了DirectX SDK,为什么我不能引用任何.dll文件,我怎么能这样做呢?
谢谢!
答案 0 :(得分:1)
此处的问题是您要添加对本机DLL的引用,而托管项目仅支持托管DLLS。我相信你要找的DLL是Microsoft.DirectX.dll
。它有DirectX的托管包装器
答案 1 :(得分:0)
我认为您正在尝试引用不是.NET程序集和/或不是COM库的.dll。
This link可能有助于找到propper .dlls:
(从链接帖子中复制/粘贴:)
您需要做的是添加正确的DLL作为对您的引用 项目。由于它们不在列表中,因此您必须添加它们 手动。我假设您使用的是十月SDK?
您需要做的是:
- 右键单击References文件夹,然后选择“添加引用...”
- 在.NET选项卡上,选择“浏览”按钮。
- 导航到您安装SDK的位置。 (在我的机器上是C:\ Program Files \ Microsoft DirectX 9.0 SDK)
- 您要查找的文件应位于“。\ Developer Runtime \ x86 \ DirectX for Managed Code”
- 选择所需的DLL(在本例中为Microsoft.DirectX.dll,Microsoft.DirectX.DirectInput.dll)
醇>