我如何找出使用什么软件工具创建了“setup.exe”以便确定静默参数是什么?

我如何找出使用什么软件工具创建了“setup.exe”以便确定静默参数是什么?

我遇到过这种情况,许多用户可以提交“setup.exe”以部署到我们所有的用户工作站上。我们使用 SCCM 来执行设置。我们希望这些 setup.exe 能够静默执行并带有日志记录。我们不能指望用户提供这些信息(这是一项要求)。

我现在的想法是,如果我们能够弄清楚创建 EXE 的安装工具是什么(Install Shield、WISE、WIX 等...),我们就可以对参数做出合理的猜测。

答案1

通过在 setup.exe 中搜索文本间接实现,如下所示:

  1. InstallShield:powershell 命令: strings.exe .\AcrobatProfessional_7.0_EN\setup.exe | select-string "InstallShield"

如果 Setup.exe 是由“Installshield”创建的,则上面的命令可能会找到如下文本:“此安装程序是使用 InstallShield Developer 的 BETA 版本创建的”

  1. Inno:powershell 命令: strings.exe .\AcapelaTexttoSpeechClient_8.2.5.3_EN\setup.exe | select-string "inno"

如果 Setup.exe 是由“Inno Setup”创建的,那么上面的命令可能会找到这样的文本:“此安装是使用 Inno Setup 构建的。”

  1. 明智:powershell 命令: strings.exe .\AcapelaTexttoSpeechClient_8.2.5.3_EN\setup.exe | select-string "InstallAware"

如果 Setup.exe 是由“Wise Setup”创建的,则上述命令可能会找到如下文本:“此安装是使用 InstallAware 构建的:http://www.installaware.com

cmdled select-string 的参数 -pattern 接受字符串数组,因此该命令可以适用于所有测试,如下所示:strings.exe'...path to exe'| Select-String -Pattern @("InstallAware","inno","InstallShield")

字符串.exe -> (https://docs.microsoft.com/en-us/sysinternals/downloads/strings

选择字符串 -> (https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/select-string?view=powershell-5.1

相关内容