MSI是安装文件,需要系统自带的msiexec.exe来执行
var tempDir = @"D:\UploadFiles\SCADASetupWix.msi"; var start = new ProcessStartInfo("msiexec.exe", "/i \"" + tempDir ); start.WindowStyle = ProcessWindowStyle.Normal; start.CreateNoWindow = true; Process.Start(start);//.WaitForExit()
但在360下,会由警告弹出。认为自动安装是不安全的。 应该还有更好的方式。
在cmd中触发安装,也会弹出360警告。然后显示拒绝安装
自动运行EXE文件,也会弹出警告。
Process prc = new Process(); try { prc.StartInfo.FileName = @"C:\Users\Administrator\Desktop\SCADA\setupok.exe"; prc.StartInfo.UseShellExecute = false; prc.StartInfo.RedirectStandardError = true; prc.StartInfo.RedirectStandardOutput = true; prc.StartInfo.RedirectStandardInput = true; prc.StartInfo.CreateNoWindow = false; prc.Start(); } catch (Exception exU) { if (!prc.HasExited) { prc.Close(); } throw new Exception(exU.Message.ToString()); }
应该有静默的安装方式。继续寻找!