Anyone ever write a DX7a installer?

Started by
1 comment, last by crmullins 23 years, 12 months ago
Has anyone actually created a DX7a installer yet? It seems to me that Microsoft has created thier own installer of sort to be redistributed with products that use DX7a. I have the DX7a CD and in the \DXF\redist\directx7 folder there is a dxsetup.exe and this executable seems to actually be a DX7a installer. The problem is that this installer is somewhat buggy. When dxsetup.exe is launched it always brings up a dialog box with two buttons: ''Reinstall DirectX'' and ''Close''. The reinstall button is named so even if the machine doesn''t have DirectX on it! This is a pretty trivial bug, but it gets worse. Once you press the reinstall button it does its thing and then pops up a "You must restart you machine now" dialog box with only an OK button. This occurs even if you already have DX7a installed. I know from the dinstall sample program that it is fairly easy to detect the current version of DirectX and thus avoid actually reinstallation. It seems to me that this dxsetup.exe that Microsoft has provided either doesn''t perform this check properly or else decides to reinstall anyway. Feeling adventurous, i decided to write my own DX7a installer using the DirectSetup API. When i began to code it, i ran into yet another dilemma. The DirectSetup function DirectXSetup() requires an address of a string that contains the root path of the DirectX component files. This string must specify a full path to the directory that contains the files Dsetup.dll, and Dsetup32.dll, as well as a "DirectX" (not case sensitive) directory containing redistributable files. Problem is, the DX7a CD doesn''t have the redisributable files on it. Instead it has them in a .cab file and i can''t seem to find any info how to extract them. Anyone have any suggestions?
Advertisement
You don''t need to extract the files from the .cab file. You just need to make sure it''s in the same folder as the dsetup and dsetup32.dll and what ever other files where in the redist directory. When you call DirectXSetup it should take care of the cab file itself.
Thanks for the info monkey8751!

This topic is closed to new replies.

Advertisement