Fix: d3dx9_38.dll is missing or not designed to run on Windows

A lot of users have been reporting problems associated with the d3dx9_38.dll file. Most of the time, errors associated with d3dx9_38.dll are triggered when the user tries to open a certain application or game.

By far, these are the two type of error messages associated with the d3dx9_38.dll file:

  • The program can’t start because d3dx9_38.dll is missing from your computer. Try reinstalling the program to fix this problem.
  • C:\Windows\system32\d3dx9_38.dll is either not designed to run on Windows or it contains an error. Try installing the program again using the original installation media or contact your system administrator or the software vendor for support.

Note: Keep in mind that d3dx9_38.dll is part of an optional collection of DirectX 9 files that are not included in Windows 8 and Windows 10. Even more, these optional DLL files will not get installed through WU (Windows Update).

If you’re currently struggling with one of these errors, the following method will surely help. We managed to identify a few potential fixes that have successfully helped users in a similar situation to resolve the issue. Please follow the methods below in order until you encounter a fix that manages to fix the issue.

Method 1: Reinstalling Direct X End-User Runtime Web Installer

Since the d3dx9_38.dll file will automatically get installed with the Direct X End-User Runtime Web Installer, a lot of users have managed to solve the problem with a few simple clicks.

Unless there’s additional corruption that is triggering the error messages, following the steps below will most likely resolve the issue indefinitely. Here’s what you need to do:

  1. Visit this link (here) and hit the Download button to download the Direct X End-User Runtime Web Installer.
  2. Open the newly downloaded installer and follow the on-screen prompts to install the missing Direct X 9 optional updates.
    Note: If the installation of the  Direct X End-User Runtime Web Installer is failing with a different error, try installing the Full DirectX End-User Runtimes (June 2010) redistributable instead. If it says that this package is already installed, go lower and install the DirectX End-User Runtimes (August 2008) redistributable.
  3. When the installation is complete, reboot your computer and see whether you are able to open the application that was previously showing the error message.

If the issue is still not resolved, move over to Method 2. 

Method 2: Deleting or Renaming all d3dx9_38.dll occurrences

If installing the various DirectX redistributable releases didn’t manage to resolve the issue (or you got an error while trying to install them), there’s one workaround that seemed to have helped a lot of users struggling with the same error.

This method involves deleting all d3dx9_38.dll that are actively used by Windows and then installing the missing redist packages to enforce a fresh copy. In the event that the files can’t be deleted due to corruption, we are going to rename them with the .old extension, forcing the operating system to disregard them.

Here’s a quick guide with the necessary steps of removing all d3dx9_38.dll occurrences (or renaming them) and then reinstalling the missing DirectX packages:

  1. Open File Explorer, navigate to C:\ Windows \ System32  and delete the d3dx9_38.dll file.
    Note: If the deletion is prevented by an error message, right-click on it and choose Rename, then add a .old extension at the end of it. This will signal your OS that the file contains an outdated version that should no longer be used.
  2. Once the first occurrence has been dealt with, navigate to C:\ Windows \ SysWOW64, locate the d3dx9_38.dll file and try to delete it.
    Note: If the deletion fails with an error message, right-click on the d3dx9_38.dll file and choose Rename. Then add the “.old” extension at the end of it like we did at step one.
  3. Once the d3dx9_38.dll file has been deleted (or renamed) in both locations let’s make sure a fresh copy takes their places. To do this, visit this link (here), then download & install the missing DLL files from DirectX 9.
    Note: If the installation fails again, install one of the two DirectX packages that include the missing file manually using the links below:
    Full DirectX End-User Runtimes (June 2010) redistributable
    DirectX End-User Runtimes (August 2008)

Kevin Arrows

Kevin Arrows is a highly experienced and knowledgeable technology specialist with over a decade of industry experience. He holds a Microsoft Certified Technology Specialist (MCTS) certification and has a deep passion for staying up-to-date on the latest tech developments. Kevin has written extensively on a wide range of tech-related topics, showcasing his expertise and knowledge in areas such as software development, cybersecurity, and cloud computing. His contributions to the tech field have been widely recognized and respected by his peers, and he is highly regarded for his ability to explain complex technical concepts in a clear and concise manner.