Defeat ‘COM Surrogate Has Stopped Working’ Errors When Playing Videos

com-surrogate-error

Make Media Center stable

If you have a bunch of video files, then you probably also have a bunch of video and audio codecs (Divx, Xvid, MPEG-4, AC3, etc.) to match. Most of the time when you don’t have a particular codec installed, either the video or audio stream won’t render, and you can diagnose which codec you need and install it.

Windows Vista decides to throw you a generic “COM Surrogate has stopped working” or “DLLHost has stopped working” error message when it can’t find some of your codecs. Vista’s updated Media Center will completely crash without any error if it encounters a file without the proper codec (not very appliance-like if you ask me). This usually occurs when trying to get the video thumbnail, so you can have a hard time navigating to other video files if you step upon this “land mine.”

This problem is caused because of codecs and other COM components installed by various softwares that aren’t fully Vista-compatible, like some versions of DivX or Nero. There are a number of possible solutions to this problem, and the right solution depends greatly on what software is actually causing the problem.

Possible Solutions

  • If you are using DivX, you should be upgraded to the very latest version (6.5+)
  • If you are using Nero, you can try upgrading to the latest version (7.7.5.1+)
  • If you’ve upgraded Nero and Divx and still have the problem, you can try renaming the file C:\Program Files\Common Files\Ahead\DSFilter\NeVideo.ax to NeVideo.ax.bak. You may also need to rename NeVideoHD.ax to NeVideoHD.bak This will break Nero Showtime, however.
  • You can disable Thumbnail previews, which should make the problem go away, but isn’t the optimal solution.
  • The older ffdshow codec pack has been known to cause some problems. The ffdshow tryouts codec pack seems to work better. Might want to try using this one: http://ffdshow-tryout.sourceforge.net
  • There’s another possible solution below of turning off DEP for dllhost, which might not work for everybody. You may have to add divx+nero executables to the DEP ignore list.

You can also fix this issue by turning off Data Execution Prevention on dllhost (the COM surrogate). This is the most direct and brute-force method to prevent this error from happening, so you shouldn’t get this error again, no matter which version of the codecs you are using.


1. Right click on Computer, and choose Properties

2. Click on Advanced System Settings, and then under Advanced, click Settings

3. Select the “Data Execution Protection” tab, and then click “Turn on DEP for all programs and services except those I select”

4. Click on the Add button, and then browse to C:\Windows\System32\dllhost.exe

Click Open, and then OK.

Now you can browse video folders without problems. More importantly, Media Center is now much more stable.

Alan is a web architect, stand-up comedian, and your friendly neighborhood Grammar Nazi. You can stalk him on the Interwebs via Google+, Facebook and follow his ass on Twitter @ocmodshop.