Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wix 如何自动卸载DirectX 9?_Wix_Directx_Uninstallation - Fatal编程技术网

Wix 如何自动卸载DirectX 9?

Wix 如何自动卸载DirectX 9?,wix,directx,uninstallation,Wix,Directx,Uninstallation,我正在组装一个WiX安装程序,其中包括静默安装DirectX 9: dxsetup.exe /silent 如何告诉WiX如何卸载DirectX?命令行上还有其他开关吗 我需要能够将安装程序配置为自动卸载DirectX,否则如果无法卸载,用户会抱怨。对于DirectX最终用户运行时(也称为DirectSetup或DXSETUP),长期以来建议您甚至不要尝试卸载它 在任何情况下,在大多数版本的Windows上,您都无法“卸载”DirectX,而运行DXSETUP实际上也不会“安装DirectX”

我正在组装一个WiX安装程序,其中包括静默安装DirectX 9:

dxsetup.exe /silent
如何告诉WiX如何卸载DirectX?命令行上还有其他开关吗

我需要能够将安装程序配置为自动卸载DirectX,否则如果无法卸载,用户会抱怨。

对于DirectX最终用户运行时(也称为DirectSetup或DXSETUP),长期以来建议您甚至不要尝试卸载它

在任何情况下,在大多数版本的Windows上,您都无法“卸载”DirectX,而运行DXSETUP实际上也不会“安装DirectX”,因为它内置在操作系统中。它只能通过安装新版本的操作系统、安装Service Pack或应用Windows Update进行更新。这适用于从Windows XP Service Pack 2、Windows Server 2003 Service Pack 1和Windows XP x64 Edition开始的所有Windows版本

DXSETUP对于部署遗留的D3DX9、D3DX10、D3DX11、XACTEngine、XAudio 2.7、XInput 1.3、D3DCompile#43或更早版本等仍然很有用。它只是从来没有安装过“DirectX”


看。如果在阅读本文后,您仍然认为需要在部署过程中运行DXSETUP,则应选择最新版本的,以避免一些潜在问题,并仅限于应用程序中实际使用的CAB。

您确定这样做安全吗?如果用户安装了您的应用程序,然后安装了另一个同样需要DirectX 9的应用程序,然后卸载了您的应用程序,那么另一个应用程序将在您卸载DirectX 9后中断。一般来说,像这样的系统依赖项(例如CRT、.NET runtime等)是由应用程序安装的,但从未卸载,因为没有系统来跟踪系统上所有依赖的应用程序。是的,您是正确的。我只是想卸载DirectX,因为用户抱怨有时我的应用程序无法卸载。我现在相信这是由于其他因素,而不是DirectX。我不会再这样做了!:o) 好的,这是有道理的。我会很好地离开。我询问的原因是我使用的前一个安装程序(InstallShield)没有正确卸载,我认为这是因为DirectX。我已经切换到WiX,应用程序本身现在似乎已正确卸载。然而,我在WiX上遇到了一系列不同的问题(单独发布)。非常感谢。