2017-09-14 1053 views
0

我正试图安装一个软件,当手动完成配置选项时,您可以从整个过程中进行选择。我试图找出一种方法来使用PowerShell实现自动化,但我坚持如何设置这些配置选项。我相信我需要在安装程序.exe上运行start-process命令,但我不知道该从哪里下载。我可以使用start-process命令中的参数传递我想要的配置吗?如何使用powershell来运行安装程序?

+0

什么应用程序是你想安装? – TheIncorrigible1

+0

每个安装程序都不同,有些类型可以传递标志和参数。一些你可以提供答案文件。有些您必须在安装过程中提供主机输入。如果不知道具体的安装程序以及它在寻找什么,则无法回答您的问题。 – BenH

+0

即时通讯尝试使用他们的安装程序升级teamcenters社区协作 – Zirono

回答

4

UPDATE:对如何处理安装配置文件提取setup.exe文件与信息的底部有几个环节。


我有一个快速查找该安装程序,但没有找到它很容易。 实质上,安装程序是Windows安装程序数据库(MSI)或其他东西 - 通常是某种setup.exe。 MSI数据库也可以封装在setup.exe中。

您应该知道,对于传统风格的安装者提供了常见的做法大规模部署是捕捉传统安装与an application repackager tool,然后编译MSI文件进行安装使用(从旧的格式有效地将一个安装程序到现代的MSI格式)。这是一项需要对Windows和设置有很好理解的专业任务。它通常在大型企业中用于非常大型的软件分发。 如果你在一家大公司,可能会有一个团队致力于打包软件,比如你提到的。也许检查你的管理。如果安装程序是MSI,则同一团队也可以根据您的规格对其进行修改。


至于您的安装EXE。尝试从命令行运行setup.exe /a并查看是否有将文件解压缩到“网络安装点”(管理安装)的选项。然后你正在处理一个包含在setup.exe中的MSI文件。如果这不起作用,您也可以尝试setup.exe /xsetup.exe /extract

Windows安装程序有内置的功能,允许您自定义通过公共属性安装(大写)设置在命令行或应用通过变换(Windows安装程序的机制,适用于重大变化供应商文件 - 它是在运行时从供应商处应用到安装数据库的部分数据库)。

非MSI的传统安装程序技术通常使用更少的可靠方法来定制安装设置,并且当它们在那里时它们往往是特别的。特别是无声运行和卸载可能是缺少或执行不力的功能。这些安装通常都以EXE格式包装,并且有许多工具用于生成它们 - 每个工具都有自己的怪癖和特征。

换句话说,这一切都取决于安装程序的实现。给那个setup.exe /a一个去,并更新您的答案与我们的新信息(不要添加太多的意见 - 我们会检查回来)。


至于使用PowerShell。到目前为止,我还没有使用PowerShell进行部署,这是非常诚实的。以下是关于如何使用PowerShell进行安装的基本说明:https://kevinmarquette.github.io/2016-10-21-powershell-installing-msi-files/

您还可以从PowerShell调用MSI文件的自动化,我不认为这与您询问的内容相关,但这里是一个快速链接,用于修改转换文件:http://www.itninja.com/question/ps-how-to-edit-a-mst-file

安装MSI文件的正常方法是通过Window内置的msiexec.exe命令行。基本msiexec.exe的命令行安装软件是:

msiexec.exe /I "C:\Your.msi" /QN /L*V "C:\msilog.log" TRANSFORMS="C:\1031.mst;C:\My.mst" 

快速参数说明:

/I = run install sequence 
/QN = run completely silently 
/L*V "C:\msilog.log" = verbose logging 
TRANSFORMS="C:\1031.mst;C:\My.mst" = Apply transforms 1031.mst and My.mst (see below). 

什么是变换?在这里解释:How to make better use of MSI files

高级安装程序有关于msiexec.exe command lines的一般页面。这里是Microsoft's msiexec.exe documentation on MSDN


一些链接:

  • 也许看到迈克尔Urman的答案在这里:Programmatically extract contents of InstallShield setup.exe。这仅适用于Installshield打包的EXE文件。
  • Installshield setup.exe commands(有一些示例命令行的一般参考 - 在文档的末尾,它看起来像命令行不正确,但第一个看起来不错,后面的那些看起来很模糊 - 只是认为我会让你知道,因为我链接到它)。这里是the official Installshield help documentation
  • Wise setup.exe commands - Wise不再可用,但如果设置较旧,它仍然可以与Wise一起打包。
  • Advanced Installer standard command line。对于这个工具,设置显然可以用setup.exe /xsetup.exe /extract来提取。查看完整列表的链接。
  • 还有一个“无声开关查找程序”工具,用于查找exe文件中的隐藏开关(用于部署),但它没有通过virustotal.com扫描,所以我不会链接到它。也许它使用的是异乎寻常的东西,比如扫描某个文件的头部位或某些奇怪的东西,这些东西会被错误地标记为恶意软件?无论哪种方式,不是我会使用的工具。
  • 最后:http://unattended.sourceforge.net/installers.php。这个链接并不差,它提供了上面的一些工具和其他一些工具 - 以及最常用的交换机。未经我测试,但看起来没问题。
  • 还有其他的部署工具有自己的打包和发送EXE文件的方式 - 它可以是一个丛林。我可以提供更多链接的这些工具的列表,但也许这只是令人困惑。请先尝试以上提供的内容。
  • 这里是一个通用的答案可能会有所帮助,以及:Extract MSI from EXE
+0

非常感谢你花时间写这篇文章。我会尝试你上面建议的 – Zirono

+0

没问题,整个文本有点混乱 - 我只是抛弃了我在那里的所有链接。但是,如果你仔细查看它们,我相信你应该能够处理你的问题。它提醒了我 - 我需要再添加一条信息。请参阅答案的开头,了解**应用程序重新打包**的注意事项。 –

相关问题