使用进程监视器排除故障并查找注册表黑客

在今天的“极客学校”中,我们将教您如何使用Process Monitor来实际完成故障排除和找出注册表黑客,否则您不会知道这些问题。

Process Monitor是工具箱中最令人印象深刻的工具之一,因为几乎没有其他方法可以查看应用程序在幕后实际在做什么。这是了解哪个进程正在写入哪些文件、注册表中存储了哪些内容以及哪些文件正在访问它们的唯一方法。

我们将从今天的课程开始,了解如何使用Windows设置对话框和进程监视器查找注册表项,然后我们将经历一个实际的故障排除方案,该方案是我们在实验室的一台计算机上遇到的,可以使用进程监视器轻松解决。

使用Process Explorer查找公用设置的注册表项

每个人都会在某个时候单击复选框或更改下拉框的值,但您是否想知道这些值实际存储在哪里?许多应用程序,以及Windows中几乎所有的东西都存储在注册表…中。某个地方。

对于今天的示例,我们将使用任务栏和导航属性第一个窗格上的第一个选项,这是一个应该存在于所有Windows版本中的对话框。因此,现在我们的任务是找出该设置在注册表中的实际存储位置。您可以按照此特定设置进行操作,也可以在同一对话框中尝试其他设置之一,或者在您想要查找隐藏设置位置的任何其他位置尝试此设置。

无论何时尝试捕获一组数据,您都要做的第一件事是启动process Monitor,然后更改设置。此时,您可以停止process Monitor继续捕获事件,这样列表就不会失控。(提示:“文件”菜单中有该选项,或者它是左数第三个图标)。

现在我们已经在列表中获得了大量数据,是时候过滤列表以减少我们必须查看的行数了。由于我们查看的是正在更改的注册表值,因此需要按“RegSetValue”进行筛选,Windows使用“RegSetValue”将注册表项实际设置为新设置。使用“Include”选项仅显示这些事件。

您的列表现在应该仅限于已更改的注册表项,因此是时候查看事件并尝试找出可能是哪个注册表项了。由于我们正在检查“Lock the Taskbar”设置,并且正在设置的其中一个注册表项的名称中包含单词“Taskbar”,因此这是一个很好的起点。在路径上单击鼠标右键,然后选择跳转到该位置。

进程监视器将打开注册表编辑器并突出显示列表中的项。现在我们需要确保这确实是正确的密钥,这很容易计算出来。先看一下设置,然后再看一下钥匙。现在该设置已启用,并且关键点被设置为0。

因此,更改设置,单击对话框上的Apply,然后使用F5键刷新注册表编辑器窗口。在我们的示例中,我们绝对选择了正确的设置,因此现在您可以看到TaskbarSizeMove值设置为1。

如果没有选择正确的值,则在再次执行设置测试时不会看到更改。所以去找下一个合乎逻辑的问题,然后重新开始。

进程监视器故障排除

要在一篇文章中说明如何解决Process Monitor或任何其他工具的问题是不可能的。可能会出错的问题组合太多了。

但是,我们可以做的是展示我们如何实际使用Process Monitor来解决实际发生在我们的一台测试计算机上的实际问题。我们一直在安装一些垃圾软件,然后决定试着清理一下电脑。问题是卸载程序面板中的一个条目不会消失。

每次您单击更改以便删除它时,都会收到一个错误消息,提示您“尝试卸载AwfulApp时出错。它可能已经卸载。是否要从程序和功能列表中删除AwfulApp?“

这本来是很好的,但是我们收到了一个错误,说“您没有足够的权限将OutfoxTV从程序和功能列表中删除。请与您的系统管理员联系。“

要做的第一件事是在process Monitor运行时再次尝试卸载过程,这捕获了大量数据。这一次,我们决定使用查找功能(CTRL+F)在列表中快速查找我们要查找的内容。如果您愿意,您也可以使用过滤器,但这看起来很简单,幸运的是它第一次就起作用了。

在查看列表中的第一项后,我们注意到一个错误:Windows试图访问与卸载程序相关的注册表项,但它们实际上并不在Windows正在查找的第一个位置的注册表中。但是,如果您向下查看几个键,您将看到一个RegOpenKey事件,其中包含HKLM\Software\Wow6432Node下的某个内容的成功结果。

通过该注册表项进行搜索很快就让我们找到了问题的根源:当Windows尝试使用RegDeleteKey操作清理列表时,会出现一条拒绝访问的消息。有意思的!

要做的第一件事是使用Jump to功能在注册表中找到键并查看。

果然,看看那边所有的注册表键!难怪它仍然出现在名单中。

为了确保安全,我们打开了C:\Program Files\目录,查看是否还有文件存在,但很明显,这个应用程序已经从PC上清除了。

解决方案非常简单:我们只需手动删除Windows在删除时遇到问题的注册表项。如果我们收到了一条拒绝访问的消息,我们可以使用权限设置来确保我们拥有访问权限,然后重试。

幸运的是,删除立即生效,我们的卸载程序列表现在是清楚的。

这些只是您可以使用Process Monitor的众多方法中的一小部分-它是一个极其重要和有用的实用程序,需要一些时间才能掌握,但一旦掌握,它确实可以帮助您解决许多问题。

下一课

从周一的下一课开始,我们将研究Sysinterals Toolkit中的许多其他实用程序,包括一些功能强大的命令行工具。

相关文章