I want to share DirectX redistributable as a prerequisite package of my application setup msi( made with visual Studio).
Anyone developed a boo开发者_StackOverflow中文版tstrapper package of DirectX? Where can I find it? I need some help about it.Thanks in advance,
PauloHere's how to add bootstrapper support for the DirectX 9c Redistributable (I wanted to do this for a ClickOnce setup.exe deployment):
1) Make this folder: C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\Bootstrapper\Packages\Microsoft.DirectX.9c
2) Make a product.xml inside that folder with:
<?xml version="1.0" encoding="utf-8"?> <Product ProductCode="Microsoft.DirectX.9c" xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper"> <PackageFiles CopyAllPackageFiles="false"> <PackageFile Name="dxwebsetup.exe" HomeSite="DirectXDownloadUrl" PublicKey="3082010A0282010100A5717418CBDB9C2FFAF1631980A38EFFC870830CA1472AFAFA5AB0CE4D0FBD3BDA21CD05D57D7C3FB59976253ADCA04F20E572D34371E6FF6C14F99F84B22587BD14B55DBE37892EC5AB856071858127B93303F9ADD69302EEB6551102CB8385F6C185636119A0149C9D9F9C466337D8113C57C748205316F7CC58FEF6C01ACAB6466C0DE83A05CEA61CE388F0DDAAC270835BD1F2F23FB8D9A49DA3006EAA81CDEE3A04ADC04A922C13E0E941760980016C6720B431B03E6BD2400883D570308D30E7BE8CD02FEED4863F1A5AA5C06885E8897C91034A6E594320489C88FEC945B7E84C04010B62CEA2EC1C9325FDD0B10EC6F8B6241A7BFB7CD65C4ED167E90203010001" /> </PackageFiles> <InstallChecks> <FileCheck Property="IsD3dx9Present" SpecialFolder="SystemFolder" SearchPath="" FileName="d3dx9_33.dll" /> </InstallChecks> <Commands Reboot="Defer"> <Command PackageFile="dxwebsetup.exe" Arguments="/Q"> <InstallConditions> <BypassIf Property="IsD3dx9Present" Compare="ValueExists" Value="true" /> </InstallConditions> <ExitCodes> <ExitCode Value="0" Result="Success" /> <DefaultExitCode Result="Fail" FormatMessageFromSystem="true" String="GeneralFailure" /> </ExitCodes> </Command> </Commands> </Product>
3) Make an /en folder and inside of the first one, and put this Package.xml in it:
<?xml version="1.0" encoding="utf-8"?> <Package Name="DisplayName" Culture="Culture" xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper"> <Strings> <String Name="Culture">en</String> <String Name="DisplayName">Microsoft DirectX 9c Runtime</String> <String Name="GeneralFailure">An unexpected exit code was returned from the installer. The installation failed.</String> <String Name="DirectXDownloadUrl">http://download.microsoft.com/download/1/7/1/1718CCC4-6315-4D8E-9543-8E28A4E18C4C/dxwebsetup.exe</String> </Strings> </Package>
Now VS will show the dx runtime as an option, and clients will download the directx runtime "web installer" from Microsoft's server and run it in /Q silent mode (also without the stupid bing bar.)
I have not packaged the DirectX components, so I can't help you there. However, I have made custom bootstrapper packages with the help of these references, examples, and programs. Hope that helps!
精彩评论