0

我想在我的 XNA 游戏中使用 DirectInput,但是在引用 .dll 文件时我遇到了问题。我正在使用 Microsoft Visual Studio C# Express Edition。这正是我所做的:

  • 右键单击“参考”
  • 选择“添加参考”
  • 导航到 .dll 文件并点击 OK

然后我收到以下错误: 在此处输入图像描述

如上所述,我想引用 Microsoft.DirectX.DirectInput 命名空间,但我不知道它在哪个 .dll 文件中,所以我只选择了“d3dref9.dll”。该目录下的每个 .dll 文件都不起作用,所以我选择的任何一个都给我同样的错误。现在我已经能够使用其他 .dll 文件来完成此操作,但由于某种原因,DirectX 文件无法正常工作。我知道这可能是因为这个人只是看了他代码中的第二行。

我安装了 DirectX SDK 为什么我不能引用任何 .dll 文件,我怎样才能做到这一点?

谢谢!

4

2 回答 2

1

这里的问题是您正在添加对本机 DLL 的引用,而托管项目仅支持托管 DLLS。我相信您正在寻找的 DLL 是Microsoft.DirectX.dll. 具有 DirectX 的托管包装器

于 2012-02-18T18:36:52.647 回答
0

我认为您正在尝试引用不是 .NET 程序集和/或不是 COM 库的 .dll。

此链接可能有助于定位propper .dll:

(从链接的帖子复制/粘贴:)

您需要做的是添加正确的 DLL 作为对您项目的引用。由于它们不在列表中,因此您必须手动添加它们。我假设您使用的是十月 SDK?

你需要做的是:

  1. 右键单击引用文件夹,然后选择“添加引用...”
  2. 在 .NET 选项卡上,选择“浏览”按钮。
  3. 导航到安装 SDK 的位置。(在我的机器上是 C:\Program Files\Microsoft DirectX 9.0 SDK)
  4. 您要查找的文件应位于“.\Developer Runtime\x86\DirectX for Managed Code”中
  5. 选择所需的 DLL(在本例中为 Microsoft.DirectX.dll、Microsoft.DirectX.DirectInput.dll)
于 2012-02-18T18:36:11.680 回答