【C#】静默安装、SQL SERVER静默安装等

本文介绍了如何在C#中使用SilentInstall方法进行软件的静默安装(包括MSI和SQLSERVER),并提供了示例,以及如何通过msiexec.exe执行卸载操作,详细解释了安装参数的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

可以通过cmd命令行来执行,也可以通过代码来执行,一般都需要管理员权限运行

代码

        /// <summary>
        /// 静默安装
        /// </summary>
        /// <param name="fileName">安装文件路径</param>
        /// <param name="arguments">安装参数</param>
        /// <param name="isRunas">是否以管理员权限运行</param>
        /// <returns></returns>
        public static void SilentInstall(string fileName, string arguments, bool isRunas = true, bool isCreateNoWindow = false)
        {
            Process processSetup = new Process();
            processSetup.StartInfo.FileName = fileName;
            if (isCreateNoWindow)
                processSetup.StartInfo.CreateNoWindow = true;
            processSetup.StartInfo.Arguments = arguments;
            processSetup.EnableRaisingEvents = true;
            if (isRunas)
                processSetup.StartInfo.Verb = "runas";
            processSetup.Exited += delegate { };
            processSetup.Start();
            processSetup.WaitForExit();
            var exitCode = processSetup.ExitCode;
            processSetup.Close();
        }

例子

//软件安装
SilentInstall(@"C:\Test.msi", @" /quiet /n");

//SQL SERVER安装
string saPwd = "123";
string arguments = $@"/q /ACTION=Install /FEATURES=""SQLENGINE, REPLICATION, SNAC_SDK"" /INSTANCENAME=""SQLExpress"" /SECURITYMODE=""SQL"" /SAPWD=""{saPwd}"" /IACCEPTSQLSERVERLICENSETERMS /UpdateEnabled=False";
SilentInstall(file, arguments);

卸载程序

SilentInstall("msiexec.exe", $" /quiet /n /uninstall {testProductCode}");

ProductCode为安装程序的ProductCode属性值

 

参考

静默安装_weixin_30741653的博客-CSDN博客

C#卸载软件 msiexec安装参数详解 - 爱码网

Installshield之静默安装_setup.iss_Blue_sky90的博客-CSDN博客

SQLserver静默安装(命令行安装)_Dan淡淡的心的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GreAmbWang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值