Beginning with Windows 8 some games won't use IndirectSound
even if the
dsound.dll is in the correct location.
To fix this the Windows registry must be changed.
(Some Windows updates may also make it necessary to repeat these changes.)
Use caution when changing the registry! Making invalid changes can cause a computer to not function correctly.
There are two locations where the relevant CLSID registry values are located. If you decide to change a registry value for a specific CLSID then it probably makes sense to change it in both of the following places:
There are two CLSIDs used to create DirectSound interfaces for playing sounds. If a game uses a CLSID explicitly it will likely be one of these two:
For each CLSID that you decide to change:
%SystemRoot%\System32\dsound.dlland a game explicitly creates a DirectSound interface using this CLSID then Windows will use the
dsound.dllat that path instead of the IndirectSound
dsound.dllthat you have put in the game's directory. In order for Windows to use IndirectSound this registry value must be just the filename with no path:
There are additional CLSIDs used to create other DirectSound interfaces. IndirectSound does not currently implement these interfaces, but they are listed here for completeness: