0

我正在尝试使用 DirectX(使用 Microsoft.DirectX.DirectInput;)在我的 C# WPF 应用程序中使用操纵杆,但由于某些奇怪的原因,我在尝试检测所有连接的设备的第一行中不断收到错误消息。到目前为止,我在应用程序中所拥有的只是构造函数中的以下代码行:

DeviceList gameControllerList = Manager.GetDevices(DeviceClass.GameControl, EnumDevicesFlags.AttachedOnly);

错误如下:

错误类型:未处理 XamlParseException。

错误消息:“在匹配指定绑定约束的类型‘JoystickTest.MainWindow’上调用构造函数引发异常。’ 行号'3'和行位置'9'。”

我正在处理我在网上找到的这个例子:http: //www.codeproject.com/KB/directx/joystick.aspx

我当前的设置是 WPF、C#、.NET 4.0 和 Windows 7 64 位

4

1 回答 1

0

在这里聚会迟到了,但问题实际上比它所说的要深一些。它无法初始化,因为您使用的是 DirectInput 程序集 (1.x),它将您的应用程序放入混合模式程序集中。您需要将此添加到 app.config 的配置节点的底部。最后,否则它会根据我的经验继续出错。

<startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version="v4.0"/>
</startup>

关键组件是useLegacyV2RuntimeActivationPolicy="true" - 这允许您的应用程序使用所需的旧程序集。

于 2011-05-31T13:37:57.667 回答