以下列出的问题解决方法适用所有出现此问题的软件,本文以Winsock expert为例。
今天想用Winsock expert抓包,于是乎下载了一个Winsockexpert绿色版,但是点击主程序文件,弹出提示错误的对话框。
如图:
这是什么情况,上网查询资料,罗列出以下几种情况:
1.系统文件损坏
2.访问权限不够
3.其他软件干扰(最可能是杀毒软件)
4.被病毒破坏
解决方法:
如果是系统文件损坏,网上有一个方法:用系统文件检查工具sfc查出损坏或被替换的文件,然后再用源文件恢复,个人认为这种方法只能作为一种参考,因为其他的应用程序同样有可能因为需要而修改系统文件,如果把所有被修改的文件全部恢复,可能会导致一些程序无法正常使用,这就厚此而薄彼了。但是我仍然把这个方法提供给大家,以供参考。
系统文件检查器工具的语法
Sfc [/Scannow] [/Scanonce] [/Scanboot] [/Revert] [/Purgecache][/Cachesize=x]
• /Scannow:立即扫描所有受保护的系统文件,并用正确的 Microsoft 版本替换错误的版本。此命令可能需要访问Windows 安装源文件。
• /Scanonce:在重新启动计算机时一次性扫描所有受保护的系统文件。此命令可能需要在重新启动计算机后访问 Windows安装源文件。运行此命令时,下面注册表项中 SfcScan 的 DWORD 值被设置为 2:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionWinlogon
• /Scanboot:在每次启动计算机时都扫描所有受保护的系统文件。此命令可能需要在每次启动计算机后访问 Windows安装源文件。运行此命令时,下面注册表项中 SfcScan 的 DWORD 值被设置为 1:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionWinlogon
• /Revert:恢复默认的扫描设置(启动计算机时不扫描受保护的文件)。运行此命令时,不会重置默认的缓存大小。此命令相当于Windows 2000 中的 /Enable 开关。
• /Purgecache:立即清空文件缓存并扫描所有受保护的系统文件。此命令可能需要访问 Windows 安装源文件。
• /Cachesize=x:将文件缓存大小设置为 x 兆 (MB)。缓存的默认大小为 50MB。运行此命令需要重新启动计算机,然后运行 /purgecache 命令以调整磁盘上的缓存大小。此命令会将下面注册表项中SfcQuota 的 DWORD 值设置为 x:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionWinlogon
如果是系统文件访问权限问题,请以管理员身份登陆系统,或以管理员身份运行这个软件,那么它应该能正常运行了,如果问题仍然存在,那么原因应该不在此。
如果是杀毒软件问题,以瑞星为例,打开实时监控设置,关闭文件监控即可。若是McAfee8.5版本的,那么只能关闭“启用按访问扫描”,不过最好还是下载升级包,解决了这个bug.
如果是病毒破坏了,那么要先杀毒,确保是干净的系统,然后重装。
重装是一切问题的终极必杀,也是我最不推荐的解决方法,就是把软件重装,甚至是系统重装,这是最低等的办法,可能也是最有效的办法,但是也可能会带来一些严重后果,比如数据丢失,配置文件丢失等。