没有什么电脑系统能够永久性地完美运行。总会在什么地方,有什么东西会出错。尽管Windows的每一个后续版本已变得越来越可靠,有了自我恢复能力,但这也绝不等于说我们就可以因此放弃能够诊断系统故障的各种软件工具了。










多年来,我已经积累了不少第三方诊断应用,这些软件一次又一次地证明了自身的价值,以至于我会在我所使用的任何系统上首先得安装好这些工具。如果系统中有什么东西出了错时——比如死了机的蓝屏、系统启动缓慢、最新安装的程序好像让所有软件的运行变得像蜗牛一样慢——我都会求救于这些诊断工具。我所推荐的这些工具都是对个人使用免费的,有些还是开源的,这里的每一种工具都值得Windows高手加以收藏的。
Sysinternals的Process Explorer
“打了激素的任务管理器”——这还是很多年前,当Mark Russinovich首次发表了Process Explorer后,有人给我做的夸张描述。不过它的确可以取代Windows的任务管理器,或者和任务管理器同时运行,无论如何,它都绝对是技术高手必备的工具。我一般都是用它来取代任务管理器。它真得是太方便了。

启动Process Explorer后,将会出现树状视图的进程表。这些进程是按照派生出它们的进程来组织的,不过你也可以点击列标题按你的意思来改变进程的排列顺序。窗口顶部分成4项:CPU使用情况,运行历史,I/O字节历史和物理内存历史。点击任何一项会出现一个完整显示的窗口视图,类似于任务管理器的性能标签窗口 ——但却更为详细,能够看到某个程序正在做什么。任务管理器根本无法望其项背。

双击进程名称,会弹出一个信息极其详尽的窗口:会列出进程的运行线索(和每个线索的堆栈),任何一个线索都可以冻结或者终止;进程的权限;进程的网络接口;程序由谁启动;甚至能看到字符串是转储到了磁盘的程序镜像中还是内存的拷贝中。所有的进程或者整棵进程树都可以被终止、冻结、重新恢复、打开进程窗口,或者优先操控——如果某个进程窗口消失在别的程序窗口之后,你可以强迫它在最前面显示。你还可以触发一个底层窗口,其中包含有关该进程的详细信息,可以为该进程指定一个特殊窗口去寻找该进程,或者可通过进程的名称去搜索任何正在运行的进程、句柄或DLL。
Windows系统信息工具(SIW)
我所用过的其他任何免费工具都没有这个单一执行文件的工具这么实用。Windows系统信息工具,缩写为SIW,已经取代了我曾用过的十多个其他程序。SIW可以列出应用许可密码、探查已安装的硬件、获取设备温度、分类已安装的多媒体编码器——其列表几乎应有尽有。

SIW是按4个基本分类组织的。其中3个分类显示在程序窗口左栏的树状视图中:软件、硬件和网络。点击这些列表项中的任何一个分支,你都能在右边的窗口中看到相应的详尽数据。
第4个分类是在该程序任务栏Tools下拉菜单中的杂项工具。这个大杂烩式的程序的作者Gabriel Topala估计肯定是因为前三个分类实在装不下了才这么安排的。在这第4类的杂项中有Eureka,可以在大多数程序中清楚地看出填以星号的密码域;有向你选中的MAC地址发送唤醒LAN的数据包的工具;有BIOS转储工具;Base64/UU编码器-×××;CPU压力测试工具;等等。SIW甚至可以在Windows的安全模式下运行。
给一句忠告:SIW的信息大多数都是只读的。虽说它很不错,能够列出或者转出很多系统信息,但基本上是不允许你去修改系统配置的。假如你想通过SIW去禁用或者启用ActiveX控制,那你还得需要某些第三方工具,比如Nirsoft的ActiveXHelper。
BlueScreenView
在Windows中,几乎没有比蓝屏死机(BSOD)问题更糟的了。除了神秘难解之外——有些BSOD问题甚至可能是由多种原因引起的——几乎可以说是十分讨厌的。我到处查找可帮助分析BSOD的工具,最后找到了一款能够很好地查找出BSOD原因的工具:BlueScreenView。

当BSOD发生时,无论其原因是什么,都会产生一个转储文件,以供事后分析。BlueScreenView可扫描系统中的这些文件,并生成一份报告,你可以在BlueScreenView中打开该报告阅读,或者转到HTML格式中进行单独分析。该报告中的每一行呈现的是BSOD的崩溃码、崩溃时间及日期,崩溃所传递出的参数(这对于调试很有用),以及大量的其他次要信息。这些结果是可搜索的,你可以查找某个特殊的崩溃码、驱动器,或者你认为可能导致崩溃的某个DLL。
Sysinternals的Autoruns
令大多数Windows用户感觉很不爽的一件事情,就是某些软件非得硬塞给系统一些自动启动的玩意儿,也不管你是不是真得需要。扫描仪和打印机的驱动程序就是这方面最差的典型。它们常常会坚持要你安装一些用处很可疑的系统驻留程序。

我们前面讲过的Process Explorer的作者Mark Russinovich编写了一个Autoruns工具,不仅可以根除你的所有这些烦恼,还能给其他东西派上用场,总而言之,它简直是不可或缺的。Autoruns可以检测你的系统,转出各种自动启动的程序和系统组件的列表——从启动文件夹到定期任务,从服务到设备驱动程序,从边栏小工具到各种×××都能一一列出。
Autoruns利用标签来组织这些信息(登录、服务、Explorer、IE、驱动等),这样就很容易查找出你最为关切的项目。你可以禁用任何应用或服务,而无须实际删除它们,也可以通过一个右键菜单完全删掉它们。
Autoruns还有命令行版本,可用于一些脚本或其他自动化工具。
WinDirStat
我的硬盘空间都到哪里去了?每个PC用户恐怕过一段时间都会这么发问,而答案也很容易找到,只要你有WinDirStat。WinDirStat可生成易于理解的硬盘使用情况图形报告,你可以一眼就看出隐藏在某个目录树里的单个文件或者文件夹吃掉了你多少GB的硬盘空间。这类工具现存的已少之又少,因为WinDirStat彻底压倒了它们。

启动该程序,首先会要求你选择一个或多个硬盘或文件夹,然后分析空间使用情况。这种分析大概需要数分钟或更多的时间,这得看你选择的硬盘或者文件夹中有多少文件而定。
一旦分析完成,结果就会按照所谓树图排列显示,占据空间较大的文件显示为较大的色块。这可以让你一目了然地看清最大的文件是什么。点击任何一个色块,程序窗口的上部就会显示出传统方式的相应文件名及其所在的目录文件夹。树状视图还可列出你选中的文件或目录的空间使用占比情况。最后,文件可根据类型配以色彩,并按照所占空间的大小排列,这样你便可一眼看出占据最多空间的是哪类文件。
在所选的文件上点击右键,还能够执行一些打开、拷贝、删除的操作。还可在色块上右键点击弹出Explorer串口或者命令行窗口。
Unlocker
还有一类麻烦我们经常会遇到:某个文件怎么都无法删除,因为它“正在使用中”。Windows Vista和Windows 7做得稍好一些,会告诉用户是哪个程序正在使用该文件,但有时候你就想删掉这个文件该怎么办?

我用过两个程序工具可处理这种麻烦。第一个是Cedrick Collomb的Unlocker,很多高手都知道这个工具,并且很喜欢使用它。第二个是名气较小,但也很不错的OpenedFilesView(是由BlueScreenView的作者Nir Sofer开发的)。两个工具都能完成同样的事情:确定是哪个进程锁定了一个文件,然后允许你结束该文件的句柄或者关掉该进程来释放文件。不过这两个工具的做法却是完全不同的。
Unlocker可以在后台静默运行,只是在Explorer窗口中增加了一个右键菜单。如果你想知道是什么进程锁定了某个特定文件,只需点右键便可弹出Unlocker工具。然后便可完成前述的工作。
OpenedFilesView
OpenedFilesView可提供当前被所有进程锁定的所有文件的定期更新列表,这些列表可排序、可查找。相同类型程序动作的文件可归置在一起,不过OpenedFilesView不支持锁定文件的删除操作或拷贝操作。

Unlocker和OpenedFilesView共有的一个主要缺陷就是对64位系统的支持不够灵光。Unlocker干脆不支持64位 Windows。OpenedFilesView虽然有64位版本,但需要禁用驱动程序签名。关掉这一设置虽然可以让未授权软件的安装更容易,但我敢打赌,大多数需要这类工具的用户都会意识到这么做的风险。(波波编译)
转载于:https://blog.51cto.com/276067106/284940