我的一个客户在他的Windows 7(Windows 7) PC上浏览图片和视频时开始遇到一个奇怪的问题:它会弹出以下错误消息:
COM Surrogate has stopped working
奇怪的是,该错误仅在浏览视频或图片文件时出现,而不是任何其他类型的文件。在做了一些研究之后,我们设法解决了这个问题,但在它最终奏效之前不得不尝试一些不同的方法。在这篇文章中,我将写出不同的可能解决方案,希望其中一个对您有用。
方法 1 – 更新编解码器
显然,由于这是一个视频/图片问题,我们认为这可能与安装了当前的编解码器集有关。这个客户特别喜欢复制和翻录东西,所以他安装了 ffdshow 和其他一些编解码器。我们手动将所有编解码器更新到最新版本,包括 ffdshow、Windows 7 Codec Pack等。您可以下载最新版本的Windows 7 Codec Pack。
如果您的计算机上安装了 DivX 或Nero,请继续将它们更新到最新版本。在某些情况下,您可能必须先卸载某个程序,然后再重新安装。
方法 2 – 卡巴斯基杀毒软件
卡巴斯基(Kaspersky)防病毒软件存在一个已知问题,会导致此问题发生。如果您使用的是Kaspersky,您需要确保更新实际的Kaspersky软件,而不仅仅是防病毒定义。您还可以通过完全禁用程序并查看问题是否消失来测试这是否真的导致了问题。
方法 3 – 命令
您可以尝试在Windows中运行一些命令,看看它是否能解决问题。您必须在命令提示符下运行这些。单击(Click)Start,键入 cmd 然后右键单击并选择Run as Administrator。现在输入以下命令,在每个命令后按回车:
regsvr32 vbscript.dll
regsvr32 jscript.dll
这将在Windows(Windows)中重新注册一些 dll,并可能修复COM代理错误。如果没有,请继续阅读!
方法 4 – 检查磁盘是否有错误
如果您仅在特定驱动器(如外部USB设备)上看到此问题,则可能是硬盘驱动器上有一些坏扇区。运行 chkdsk 以确保驱动器正常运行是个好主意。您可以阅读我之前关于如何使用 chkdsk 实用程序的(how to use the chkdsk utility)帖子。
方法 5(Method 5) –为 dllhost.exe禁用 DEP(– Disable DEP)
另一个多次提到的修复方法是将 dllhost.exe 添加到DEP(数据执行保护(Data Execution Protection))的排除列表中。您可以阅读我之前关于如何在 Windows 中关闭 DEP 的(how to turn off DEP in Windows)帖子。在该文章的最后一步,单击添加,然后在(Add)Windows 7 32 位中添加以下 exe 文件:
C:\Windows\System32\dllhost.exe
对于Windows 7 64 位,您必须排除此路径中的 dllhost.exe 文件:
C:\Windows\SysWOW64\dllhost.exe
方法 6 – 显示器/打印机驱动程序
这可能有点棘手,但如果您最近更新了显示器的驱动程序,甚至计算机上的某些其他硬件,请尝试将驱动程序回滚到以前的版本。显示驱动程序通常比其他任何事情都更重要。在某些情况下,更新到最新版本的显示驱动程序也可以解决此问题,因此您必须尝试升级驱动程序或回滚驱动程序。
要回滚显示驱动程序,请转到设备管理器(Device Manager),展开显示适配器( Display Adapters ),然后右键单击显示设备并选择卸载(Uninstall)。您将看到一个弹出窗口,您需要在其中选中删除此设备的驱动程序软件(Delete the driver software for this device)框。
同样,如果有可用更新,您还应该检查您的打印机驱动程序并更新所有驱动程序。
希望其中一种方法可以修复Windows 7中的(Windows 7)COM 代理(COM Surrogate)错误。如果没有,请在此处发表评论,让我们知道您的规格以及您尝试过的内容,我们会尽力提供帮助。享受!
Fix COM Surrogate has stopped working in Windows 7
A client of mine started having a strange problem when browsing pictυres аnd videos on hіs Wіndows 7 PC: іt would pоpup with the following error message:
COM Surrogate has stopped working
The odd thing was that the error only came up when browsing video or picture files, not any other type of file. After doing some research, we managed to fix the problem, but had to try a couple of different things before it finally worked. In this post, I’ll write out the different possible solutions and hopefully one of them will work for you.
Method 1 – Update Codecs
Obviously since it was a video/picture problem, we thought it could be something with the current set of codecs installed. This client in particular liked to copy and rip stuff, so he had ffdshow installed plus some other codecs. We manually updated all the codecs to their latest versions including ffdshow, Windows 7 Codec Pack and others. You can download the latest version of Windows 7 Codec Pack.
If you have DivX or Nero installed on your computer, go ahead and update those to the latest versions too. In some cases, you may have to uninstall a program and then reinstall it later on.
Method 2 – Kaspersky Antivirus
There has been a known issue with Kaspersky antivirus that cases this problem to occur. If you’re using Kaspersky, you need to make sure you update the actual Kaspersky software, not just the antivirus definitions. You can also test to see if this is really causing the issue by disabling the program altogether and seeing if the issue goes away.
Method 3 – Commands
There are a few commands you can try to run in Windows to see if it fixes the problem. You have to run these in the command prompt. Click on Start, type cmd and then right-click and choose Run as Administrator. Now type in the following commands, pressing enter after each one:
regsvr32 vbscript.dll
regsvr32 jscript.dll
That will re-register a few dlls with Windows and possibly fix the COM surrogate error. If not, keep reading!
Method 4 – Check Disk for Errors
If you’re seeing this problem only on a particular drive like an external USB device, then it could be that there are some bad sectors on the hard drive. It’s a good idea to run a chkdsk to make sure the drive is functioning properly. You can read my previous post on how to use the chkdsk utility.
Method 5 – Disable DEP for dllhost.exe
Another fix that has been mentioned numerous times is adding dllhost.exe to the exclusion list for DEP (Data Execution Protection). You can read my previous post on how to turn off DEP in Windows. On the last step in that article, click Add and then add the following exe file in Windows 7 32-bit:
C:\Windows\System32\dllhost.exe
For Windows 7 64-bit, you have to exclude the dllhost.exe file in this path:
C:\Windows\SysWOW64\dllhost.exe
Method 6 – Display/Printer Driver
This can be a little tricky, but if you recently updated a driver for your display or even some other hardware on your computer, try to roll back the driver to the previous version. It’s usually more so with the display driver than anything else. In some cases, updating to the most recent version of the display driver can also fix the issue, so you’ll have to play around with either upgrading the driver or rolling back the driver.
To rollback the display driver, go to Device Manager, expand Display Adapters and then right-click on the display device and choose Uninstall. You’ll see a pop up window where you need to check the Delete the driver software for this device box.
In the same light, you should also check out your printer drivers and update all of them, if updates are available.
Hopefully, one of these methods will fix the COM Surrogate error in Windows 7. If not, post a comment here and let us know your specs and what you’ve tried and we’ll try to help. Enjoy!