安装自定义程序,无需用户交互

本文关键字:用户 交互 自定义 程序 安装 | 更新日期: 2023-09-27 18:05:06

我想创建一个程序,可以安装一个程序,用户选择(用户选择安装程序从磁盘)。我知道如何运行一个可执行文件使用进程类。但是如何在没有用户交互的情况下安装程序(静默安装)?

安装自定义程序,无需用户交互

您计划运行的安装程序需要支持静默安装。如果他们不这样做,你会有困难的时间

幸运的是,大多数安装程序允许与MSI相同的命令行参数。试着以programName_installer.exe /?的身份运行你的安装程序,看看它是否会给你一个帮助窗口。

下面是一个MSI命令行选项列表。'qn删除所有UI交互

此外,当您运行进程时,您需要进行以下设置以确保不会向用户显示控制台弹出窗口:

            ProcessStartInfo info = new ProcessStartInfo("programName_installer.exe", @"'qn");
            info.CreateNoWindow = true;
            info.WindowStyle = ProcessWindowStyle.Hidden;
            info.UseShellExecute = false;
            info.RedirectStandardError = 
                info.RedirectStandardOutput = true;
            using (Process process = Process.Start(info))
            {
                process.WaitForExit();
                string output = process.StandardOutput.ReadToEnd();
                string error = process.StandardError.ReadToEnd();
                int exitCode = process.ExitCode;
            }