我可以使用SlimDX创建一个依赖于已经与Vista / Win7捆绑在一起的DirectX DLL的应用程序吗?

时间:2010-05-26 19:49:17

标签: .net deployment directx slimdx

我正在开发一个需要使用加速图形的.NET应用程序,目前是DirectX 9.0c。该软件是图形密集型的,此外,还必须可以从CD或ClickOnce启动,而无需用户的管理员权限。

我目前使用的是SlimDX,它的功能非常强大,但是由于必须安装DirectX可再发行组件,用户变得相当恼火。特别是因为这确实需要提升权限。很难向他们解释为什么与他们的操作系统捆绑在一起的DirectX版本是不够的。毕竟 - 自2004年以来,DirectX 9.0c已经存在,我没有使用任何新的花哨功能。

能够在没有任何特殊附加先决条件的情况下提供在Vista或Windows 7中“正常工作”的应用程序,这将是一个巨大的优势。

因此:有没有办法使用基于SlimDX的DirectX 9.0c构建应用程序,它只依赖于标准Windows Vista / Win7安装中提供的库?那是 - 不需要安装额外的DirectX可再发行组件吗?

如果没有 - 是否有任何其他托管(最好不被放弃)的DirectX包装器可以达到此目的?

提前致谢!

1 个答案:

答案 0 :(得分:1)

我认为SlimDX无法运行DirectX可再发行组件,但可以将DirectX DLL直接捆绑到您的程序集中,而不是使用可再分发包将它们安装到GAC。我自己没有测试过这种可能性,但如果你想让它适用于x86和x64平台,那么以通用方式加载正确的DirectX DLL可能会很复杂。

我不知道另一个DirectX Wrapper,但SlimDX似乎是唯一一个在x64平台上运行的。