C# 我如何创建一个静默安装,而我不';你不需要按“下一步”按钮吗?
我正在尝试对正在下载的.exe进行静默安装。 下载方法与安装无关,因为它与安装无关 但是,当它下载完毕并且我已经启动了这个过程时,它不是按照我想要的方式安装(不必按“下一步”按钮),而是打开UAC请求管理权限。当我按YES时,它会打开.exe,我必须手动安装它 有没有办法按照我想要的方式安装它C# 我如何创建一个静默安装,而我不';你不需要按“下一步”按钮吗?,c#,process,installation,C#,Process,Installation,我正在尝试对正在下载的.exe进行静默安装。 下载方法与安装无关,因为它与安装无关 但是,当它下载完毕并且我已经启动了这个过程时,它不是按照我想要的方式安装(不必按“下一步”按钮),而是打开UAC请求管理权限。当我按YES时,它会打开.exe,我必须手动安装它 有没有办法按照我想要的方式安装它 Process process = new Process(); process.StartInfo.FileName = @"C:\PATH\Setup.exe"; process.StartInfo.
Process process = new Process();
process.StartInfo.FileName = @"C:\PATH\Setup.exe";
process.StartInfo.Arguments = "/quiet";
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.Start();
process.WaitForExit();
静默安装exe并不容易。最简单的方法是使用msi包来实现这一点。因此,您必须从exe中提取msi,并使用以下参数之一调用它:
- 完整用户界面:/qf(这是默认参数)
- 减少的用户界面:/qr(用户界面不显示任何向导对话框)
- 基本用户界面:/qb,/passive(测试期间仅显示进度条) 安装)
- 无用户界面:/qn,/quiet(安装期间不会显示用户界面)
如果您想以静默方式安装exe,那么您还需要做很多事情。但这取决于您尝试安装的安装包的类型。找出创建包时使用的安装程序软件是什么,然后查找为包指定的文档。如果可能,您需要在文档中查找允许以静默方式运行exe的命令行参数。此外,您还必须确定软件包是按用户安装还是按机器安装,因为不同的权限决定了提升类型。如果您无法将原始安装程序打包到MSI中,那么您可以随时查看Auto-IT() AutoIt v3是一种类似于基本免费软件的脚本语言,旨在实现Windows GUI和通用脚本的自动化。它结合使用模拟按键、鼠标移动和窗口/控件操作,以其他语言(如VBScript和SendKeys)无法实现或不可靠的方式自动化任务。AutoIt也是非常小的、独立的,可以在所有版本的开箱即用Windows上运行,无需烦人的“运行时”
使用这一功能,你可以玩游戏,让“下一步”按钮在本质上被自动点击,从而实现你的目标 如果您的安装程序是InstallShield,则可以使用以下命令:
setup.exe/s/v/qb
用于带基本MSI UI的静默安装,或setup.exe/s/v/qn
用于不带任何UI的静默安装。
看看这个问题,它可能会有所帮助。如果从命令行启动C:\PATH\Setup.exe/quiet,在UAC窗口中按“是”后,安装程序会安静地继续吗?如果这种行为持续存在,那么在不降低UAC安全性的情况下,您可能做不了什么。启动安装程序的过程将以开发的方式运行(具有管理员权限)?我想,您需要寻找特定于安装程序的方法。在这里可以找到通用安装程序的静默安装摘要:它实际上取决于执行安装的安装程序。如果不知道,就没有办法去做。。。那是什么呢?Wise、安装、安装屏蔽、MSI?