DirectX won't install

1

I have a PC that I have clean installed Windows 7 on so that I have a nice clean PC to play my beloved Tom Clancy games on. However, whenever I attempt to install DirectX 9.0c I get the error an internal system error occurred

Checking through DXError.log I see:

--------------------
[09/05/15 18:23:21] module: dxupdate(Mar 30 2011), file: dxupdate.cpp, line: 5738, function: DirectXUpdateInstallPlugIn

    Failed API:     SetupIterateCabinet()
    Error:      (1224) - The requested operation cannot be performed on a file with a user-mapped section open.



    Unable to iterate through C:\dx\Jun2007_XACT_x64.cab. The file may be damaged.

--------------------
[09/05/15 18:23:21] module: dsetup32(Mar 30 2011), file: dxupdate.cpp, line: 280, function: CSetup::InstallPlugIn

    DirectXUpdateInstallPlugIn() failed.

--------------------
[09/05/15 18:23:21] module: dsetup32(Mar 30 2011), file: setup.cpp, line: 1727, function: CSetup::SetupForDirectX

    InstallPlugIn() failed.

--------------------
[09/05/15 18:25:46] module: DXSetup(Mar 30 2011), file: dxsetup.cpp, line: 935, function: FindDXSetupWindow

    Failed API:     GetWindowText()
    Error:      (183) - Cannot create a file when that file already exists.



--------------------
[09/05/15 18:28:30] module: dxupdate(Mar 30 2011), file: dxupdate.cpp, line: 5738, function: DirectXUpdateInstallPlugIn

    Failed API:     SetupIterateCabinet()
    Error:      (1224) - The requested operation cannot be performed on a file with a user-mapped section open.



    Unable to iterate through C:\dx\Aug2007_XACT_x64.cab. The file may be damaged.

--------------------
[09/05/15 18:28:30] module: dsetup32(Mar 30 2011), file: dxupdate.cpp, line: 280, function: CSetup::InstallPlugIn

    DirectXUpdateInstallPlugIn() failed.

--------------------
[09/05/15 18:28:30] module: dsetup32(Mar 30 2011), file: setup.cpp, line: 1727, function: CSetup::SetupForDirectX

    InstallPlugIn() failed.

--------------------
[09/05/15 18:28:53] module: dxupdate(Mar 30 2011), file: dxupdate.cpp, line: 5738, function: DirectXUpdateInstallPlugIn

    Failed API:     SetupIterateCabinet()
    Error:      (1224) - The requested operation cannot be performed on a file with a user-mapped section open.



    Unable to iterate through C:\dx\Nov2007_X3DAudio_x64.cab. The file may be damaged.

--------------------
[09/05/15 18:28:53] module: dsetup32(Mar 30 2011), file: dxupdate.cpp, line: 280, function: CSetup::InstallPlugIn

    DirectXUpdateInstallPlugIn() failed.

--------------------
[09/05/15 18:28:53] module: dsetup32(Mar 30 2011), file: setup.cpp, line: 1727, function: CSetup::SetupForDirectX

    InstallPlugIn() failed.

--------------------
[09/05/15 18:33:38] module: dxupdate(Mar 30 2011), file: dxupdate.cpp, line: 5738, function: DirectXUpdateInstallPlugIn

    Failed API:     SetupIterateCabinet()
    Error:      (1224) - The requested operation cannot be performed on a file with a user-mapped section open.



    Unable to iterate through C:\dx\Aug2008_XAudio_x64.cab. The file may be damaged.

--------------------
[09/05/15 18:33:38] module: dsetup32(Mar 30 2011), file: dxupdate.cpp, line: 280, function: CSetup::InstallPlugIn

    DirectXUpdateInstallPlugIn() failed.

--------------------
[09/05/15 18:33:38] module: dsetup32(Mar 30 2011), file: setup.cpp, line: 1727, function: CSetup::SetupForDirectX

    InstallPlugIn() failed.

--------------------
[09/05/15 18:38:13] module: dxupdate(Mar 30 2011), file: dxupdate.cpp, line: 5738, function: DirectXUpdateInstallPlugIn

    Failed API:     SetupIterateCabinet()
    Error:      (1224) - The requested operation cannot be performed on a file with a user-mapped section open.



    Unable to iterate through C:\dx\Feb2010_XACT_x64.cab. The file may be damaged.

--------------------
[09/05/15 18:38:13] module: dsetup32(Mar 30 2011), file: dxupdate.cpp, line: 280, function: CSetup::InstallPlugIn

    DirectXUpdateInstallPlugIn() failed.

--------------------
[09/05/15 18:38:13] module: dsetup32(Mar 30 2011), file: setup.cpp, line: 1727, function: CSetup::SetupForDirectX

    InstallPlugIn() failed.

At this point in time, I have tried:

  • Installing DirectX using the Web Installer
  • Installing DirectX using the Offline Installer
  • Installing all Windows updates, then installing DirectX
  • Removing the DLLs associated with DirectX and installing DirectX
  • Rebooting (multiple times) and installing DirectX

I really don't want to do a clean install, as it takes to much effort to reinstall everything. My systeminfo is:

Windows 7 Ultimate x86_64, Retail SKU
GenuineIntel Core i7-4720HQ
8GB DDR3 RAM
NVidia 850M GPU

td512

Posted 2015-09-05T06:47:59.600

Reputation: 4 778

Answers

0

The answer to this was quite simple. Delete the offending DirectX files from both System32 and SysWOW64. I always removed the files from System32 but never SysWOW64. Thanks to this post on Microsoft Forums that mentioned SysWOW64.

It also may be helpful to know that the reason the DirectX Installer couldn't update the files was because Steam was using one file in SysWOW64 which was preventing the installation.

td512

Posted 2015-09-05T06:47:59.600

Reputation: 4 778

Any chance of listing the files that need deleting? I can't see an obvious indication from the log file you posted. – Mokubai – 2015-09-05T08:19:47.923

@Mokubai In Windows 7, I deleted all d3d* xaudio* and xinput* files. When I went to do the same in SysWOW64 Steam was using a file the installer was trying to update – td512 – 2015-09-05T14:17:33.847