我正在开发一个 WPF 应用程序,其中 3D 部分由 DirectX 9 处理(很多 3d 使用 WPF 运行速度不够快)。
问题是应用程序以“任何 CPU”作为配置发布,当用户在 64 位窗口上运行它时,direcX 部分崩溃(System.BadImageFormatException)。显然,directX 部分包含的 dll 在 64 位窗口上不可用。
这发生在我们在应用程序中使用的其他一些 3:rd 部分 dll 中,但是如果用户在 64 位 Windows 机器上运行,我们通过将运行时中的 dll 更改为为 x64 构建的 dll 解决了这个问题。你们有谁知道我在哪里可以找到 x64 的 DirectX 9 dll 吗?如果它们存在的话。
我需要的是:
- Microsoft.DirectX.Direct3D
- Microsoft.DirectX.Direct3DX
- 微软.DirectX
如果它们不存在,是否可以通过其他方式解决问题?我无法将配置更改为 x86,因为应用程序是通过 ClickOnce 发布的,并且配置更改使 ClickOnce 停止工作(配置包含在 ClickOnce 键中)
让我补充一点,我正在使用由 WPF 应用程序托管的 Winforms 部分,并且 winforms 部分正在使用我所询问的 DirectX dll。与使用 WPF:s 3D 相比,这是一种在 WPF 中呈现大量 3D 网格的更好更快的方法。不幸的是,这个问题反而发生了。