如何确保我的direct3d应用程序每次都可以在任何PC上运行

时间:2016-02-03 15:42:27

标签: c++ winapi directx

我已经创建了一个利用Microsofts Directx9作为图形API的应用程序,它在我的计算机上运行良好,但在其他计算机上,它要求dll主要与msvcrt和d3d运行时相关。那么如何确保我的应用程序每次执行时都会运行,而不知道vcrt或directx是什么?我是否使用我的应用程序提供运行时包?虽然2MB应用程序不可行。该怎么办?

1 个答案:

答案 0 :(得分:1)

正如Nicol Bolas在下面指出的那样,必须在用户计算机上安装DirectX(和Visual C ++)才能使用您的应用程序。

我之前建议捆绑DirectX Web Installer,因为它非常小,但正如Ross Ridge所说,这可能不是分发DirectX的合法方式。 Microsoft建议使用not bundle the Web Installer,但请使用可再发行组件包:

  

始终安装DirectX,并默默地执行

     

强烈建议游戏默默安装DirectX   可再分发的游戏是针对游戏构建的。 DirectX   安装过程的目的是为了验证是否有任何问题   需要更新并快速返回,如果没有。所以,没有   需要询问用户是否需要安装DirectX。一个沉默   可以通过从您的命令运行此命令来完成DirectX的安装   安装包:dxsetup.exe / silent

     

询问用户是否要安装DirectX会导致许多问题。   例如,如果用户假定他具有最新的可再发行组件   安装并选择跳过DirectX的安装;安装   无论如何,游戏可以继续成功。但是,如果是游戏   需要特定版本的D3DX或其他更新功能   被跳过,然后游戏将无法工作,用户将非常   沮丧。

请按照Microsoft的建议进行操作,并将可再发行组件添加到您的应用程序中。

另外,请不要忘记将任何可再发行的许可协议包含在您的应用程序中。在安装之前,用户必须必须显示这些协议。