【问题标题】:How to recognize an installer file?如何识别安装程序文件?
【发布时间】:2012-03-03 10:12:47
【问题描述】:

我想做一个安装程序跟踪器。 如果执行文件是安装程序,我将启动一个过程来记录设置过程。所以我在安装后得到了一个设置日志。

但是我如何识别安装程序文件。所有安装程序文件都有“.exe”扩展名。执行文件中是否有特殊的元数据告诉我这是一个安装程序文件。

我知道 word 文件有“作者”、“标题”元数据。也许安装程序文件具有“安装程序”元数据。有人帮帮我吗?

【问题讨论】:

  • 您将如何确保您的“跟踪器”始终运行?即使您解决了这个问题,它如何“跟踪”用户已经开始安装? (或者我是否破坏了你的下一个问题?)
  • 并非所有安装程序文件都是.exe。有些是.msi。但是要回答您的问题,如果是我,我会监控注册表以查看它在程序运行时是否会添加很多内容。

标签: c# windows installation


【解决方案1】:

没有;安装程序只是一个可执行文件(或脚本,如果是 MSI)。

但是,您可以通过它所做的来识别它 - 像以前一样拍摄系统快照,也许挂钩可执行文件的文件和注册表操作,然后在完成时查看它发生了什么变化。

例如,它是否在 Program Files 中创建了一个文件夹?它是否在注册表中创建了卸载程序条目?它是否创建了任何服务?等等。

【讨论】:

    【解决方案2】:

    当安装/删除/修复 MSI 时,操作系统将启动“msiexec.exe”进程。所以这可能是您想要观看的另一个资源。

    对于文件/注册表系统,您可以使用操作系统监控 API 来监听更改并为您提供所需的信息。 http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx

    【讨论】:

      猜你喜欢
      • 2022-12-03
      • 2018-06-15
      • 1970-01-01
      • 1970-01-01
      • 2018-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-31
      相关资源
      最近更新 更多