我想知道是否有一种方法可以检测安装程序会影响哪些注册表设置。除了运行全尺寸VM,然后以某种方式比较注册表配置单元的快照之外,还有其他选择吗?如果这些是最好的方法,请分享您的经验。
此处的目的是弄清楚某个程序在注册表中的哪里存储设置。在安装过程中以及其他情况。询问开发人员似乎是一个好主意,但我以前曾遇到过这种情况(不知道程序在注册表中的什么位置存储设置),并且想找到解决此问题的通用方法。
我想知道是否有一种方法可以检测安装程序会影响哪些注册表设置。除了运行全尺寸VM,然后以某种方式比较注册表配置单元的快照之外,还有其他选择吗?如果这些是最好的方法,请分享您的经验。
此处的目的是弄清楚某个程序在注册表中的哪里存储设置。在安装过程中以及其他情况。询问开发人员似乎是一个好主意,但我以前曾遇到过这种情况(不知道程序在注册表中的什么位置存储设置),并且想找到解决此问题的通用方法。
Answers:
我对这些小型便携式应用程序有很好的经验。
RegFromApp仅显示目标应用程序所做的更改
RegFromApp v1.30(NirSoft)
RegFromApp监视所选应用程序对注册表所做的更改,并创建一个标准RegEdit注册文件(.reg),其中包含应用程序对注册表所做的所有更改。您可以使用生成的.reg文件在需要时通过RegEdit导入这些更改。
Regshot是一个开放源代码(LGPL)注册表比较实用程序,它使您可以快速拍摄注册表快照,然后将其与第二个快照进行比较-在进行系统更改或安装新的软件产品后即可完成。
我自己的其他经验:
第二种方法是将Sandboxie与SandboxDiff一起使用。
这使您有机会在接触实时系统之前查看将要更改的内容。
Sandboxie在隔离的空间中运行您的程序,以防止它们对计算机中的其他程序和数据进行永久更改。您还可以访问程序执行期间所做的所有更改。
使用“ Sandboxie”(Ronen Tzur创建的惊人应用程序)时,SandboxDiff允许跟踪注册表和文件中的更改。由沙盒程序(或任何沙盒操作)创建/修改的所有注册表项和文件系统均由SandboxDiff监视并列出。当用户希望(安装应用程序之前)知道注册表和文件系统中安装程序所做的所有更改时,此功能非常有用。
您可以尝试运行Process Explorer(Microsoft提供的免费工具),您可以使用它来显示安装过程中访问的所有文件和密钥。
将会显示很多信息,但是您可以按应用程序进行筛选(您需要知道安装期间正在运行的应用程序,可能类似于setup.exe或msiexec)。
Systracer可以完美地完成您想要的操作:
SysTracer是一个系统实用工具,可以扫描和分析您的计算机,以将更改(添加,修改或删除)的数据查找到注册表和文件中。
有免费和付费版本。