昨天不小心把DLL(动态链接库)文件给关联到了Adobe PhotoShop上面了,于是想把它修复成之前的模样,可惜把系统还原关闭了。
    于是使用SREng及HiJackThis进行检查,没检查出来问题。SREng中的文件关联修复也没有dll一项。
    接着,打开控制面板——文件夹选项——文件类型,企图在这里寻找dll文件,结果发现,在这里dll文件及exe文件均没有显示。
    于是打开注册表进行修改,首先找到HKEY_CLASSES_ROOT下面的.dll一项,查出其默认键值是dllfile,于是再搜索到同一目录中的dllfile一项,发现其DefaultIcon及shell均被关联到Photoshop中,于是直接删除。
    回到Explorer一看,dll文件图标是改过来了,可是双击后仍然使用Photoshop打开。
    接下来只能依靠朋友了,在baidu及Google搜索了N多文章,除了部分推荐使用SREng及HiJackThis之外,还有一些不太常见的工具,然而大部分是针对中毒的情况。而我的问题恰恰是手动修改了dll文件关联(在使用ACDSee企图提取图片文件时执行的误操作)。
    正灰心之时想起Windows 98及Windows 2000中,文件夹选项均有dll文件及exe文件,猜想,能不能在Windows XP中建立dll文件并覆盖原先的文件关联。于是我首先开启了系统还原。然后再次打开文件夹选项——文件类型,创建了一类后缀为.dll的文件类型,同时发现在建立新文件类型窗口的“高级”按钮,点开后显示“关联的文件类型”,并且兴奋地发现其中有“应用程序扩展”一栏,选上。通过以上操作在“文件类型”一页出现了dll文件类型,打开一看,果然其中有“Open”操作,并且关联了Photoshop程序,于是把“Open”这一操作删除掉,并且在Shell32.dll文件中提取了原来的图标。
    回到Explorer,一切恢复正常。
    总结:一些让人折腾很久很烦人的问题,可能实际上解决方法很简单。我们要做到的是,第一,所有的困难之所以让人难受并不是因为问题无法解决,而是我们没有找到合适的解决方法;第二,记住每失败一次就排除了一个错误的方法,也就是说向成功迈进了一步,无论失败多少次都不要放弃;第三,扩展自己的思路,不停的从各个方向去尝试;第四,像我现在写这篇文章一样,注意总结。