This error affects all Source engine based games, including Left 4 Dead 2, Portal 1 & 2, Team Fortress 2.
In my case the issue was caused by using LapLink PCMover to transfer stuff from a 32bit (older) Windows to a 64bit one. This broke part of WMI, triggering some rather weird errors later down the road.
Quick dirty “fix”
Not really a fix per-se as it definitely causes issues later, but one way of solving this is to simply remove the 64bit copy of fastprox.dll:
- Gain ownership of C:\WINDOWS\SysWOW64\wbem\FASTPROX.DLL and assign yourself Full control of the file if necessary.
- Rename FASTPROX.DLL at this location to FASTPROX.OLD (or anything else)
- All steam games will now launch without shaderapidx9.dll error.
Only try this method if you’re running a 64bit version of Windows. Also, this file will be restored if you ever run sfc and the issue will return. Additionally, other programs requiring this file might fail in the future. Updates may restore the file at this location recreating the issue.
Proper fix – repairing WMI (in Windows 7 and probably newer)
While this operation takes a bit longer and is a tad more complicated, it’s the correct way of fixing Windows’ WMI after transferring your software over from a different architecture / older Windows version.
- Click on Start » Run » type in cmd
- On the command prompt run the steps below in order:
net stop winmgmt
A system restart is recommended after performing WMI operations.
References: Steam forums (1) (2), SevenForums
Repairing WMI doesn’t work for me…
so left 4 dead 2 doesn’t run while steam running as beta, set it to normal (no beta test of steam) it works!
But now, after some weeks later – l4d2 crashed in both, beta and non beta of steam with that error!
Renaming works for the game but fastprox is needed for some other applications so then they fail.
It may be a good idea to run
sfc /scannowbefore repairing WMI (just to make sure all your OS files are the correct copies).