专栏首页逍遥剑客的游戏开发打造最小的DirectX安装程序

打造最小的DirectX安装程序

DirectX Runtime

核心组件有Direct3D, DirectSound和DirectInput, 可以看作是操作系统的一部分. DirectX9.0c的核心组件自从DirectX SDK Summer 2004后就再也没有变过了, 除了Vista上的DX10. 而DirectX9.0c已经包含在WinXP SP2中了, 我想现在应该还没有人在用SP1或2000而不装DX9.0c的吧?(除非不玩游戏). 换句话说, 我们可以假设核心组件在用户的机器都已经存在了, 我们没有必要再给他们安装一次. 

可选的组件有D3DX库, XACT, XINPUT和Managed DirectX. 

DirectX 的安装

在SDK/Redist目录下已经包含了一份完整的DX Runtime安装程序, 完全可以随应用程序一起发布给用户. 如果不想显示安装界面, 可以用"dxsetup.exe/silent"来调用安装程序. 

DirectX安装程序至少需要以下几个文件:

  • dxsetup.exe
  • dsetup32.dll
  • dsetup.dll
  • dxupdate.cab
  • dxdllreg_x86.cab

加起一共才3M. 当然, 这只是安装程序, 并不包含你所要升级的组件. 

首先, 如果不是64位程序(32位程序在64位系统下使用的仍然是32位库), 那么所有的*_x64.cab都可以去掉. 

如果核心库不需要安装(前面说过, 假设用户机器上已经存在DirectX9.0c), 那么DirectX.cab和dxnt.cab都可以去掉. 

然后是可选组件, 如果你使用的是August 2008的SDK, 而一般情况下都会用到D3DX库, 所以Aug2008_d3dx9_39_x86.cab是必需的. 至于XACT, XINPUT和MDX用到哪个加上哪个的cab. 

如果没有使用DirectShow, BDA.cab, BDANT.cab和BDAXP.cab也可以忽略(也可以假设用户机器上已经存在)

好了, 经过这些精简, 剩下的文件应该不会超过10M^_^, 对于一个客户端来说是九牛一毛, 嘿嘿

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 打造最小的DirectX安装程序

    核心组件有Direct3D, DirectSound和DirectInput, 可以看作是操作系统的一部分. DirectX9.0c的核心组件自从DirectX...

    逍遥剑客
  • NPK文件格式

    逍遥剑客
  • StormLib Functions

    逍遥剑客
  • 打造最小的DirectX安装程序

    核心组件有Direct3D, DirectSound和DirectInput, 可以看作是操作系统的一部分. DirectX9.0c的核心组件自从DirectX...

    逍遥剑客
  • 【工作感悟】Android 开发者,如何提升自己的职场竞争力?

    今年的互联网,延续了去年的态势。虽然前些年,每到年底的时候大环境都不好,然而来年照样春暖花开。但是2018下半年的颓势,在2019年春天并未得到缓解,所以现在的...

    Android技术干货分享
  • 谷歌重磅推出Android Pie,以AI为驱动

    谷歌今天透露,Android P代表Android Pie,接替Android Oreo,并将最新的源代码推送到Android开源项目(AOSP)。谷歌移动操作...

    AiTechYun
  • Android 9 Pie新版本入门

    Android 9的昵称是“Pie”。这并不是最受欢迎的Android名称,但它最后将会变成一个最受欢迎的名称。说到底,真正重要的是“Pie”的新功能——而且有...

    程序你好
  • openshift/origin工作记录(4)——Pod时区同步

    最近在收集Docker日志等操作的时候,发现openshift的pod时区默认和宿主机不同步,默认使用UTC时间。 解决方案 设置Docker容器环境变量...

    胡了了
  • 使用电信3G猫在Linux下上网办法(第二步,拨号)

    用户3765803
  • 从用户行为去理解内容-item2vec及其应用

    从内容属性去理解用户行为,预测用户行为,那么也可以通过理解用户行为去理解内容,预测内容属性。

    腾讯知文实验室

扫码关注云+社区

领取腾讯云代金券