C# process类调用msi程序

来源:百度知道 编辑:UC知道 时间:2024/05/30 03:57:42
为什么没有安装界面?跟双击运行的不一样

哈哈,我自己来回答吧!
process p = new process();

p=process.start(filepath);

不知道你是否调用的Process.Start方法来调用msi程序的。这个方法有多个重载,你可以使用其中一个Start(ProcessStartInfo)来调用,你必须先构造一个ProcessStartInfo对象,指定要调用的路径,还有一个属性CreateNoWindow,表示获取或设置指示是否在新窗口中启动该进程的值。参考代码:

ProcessStartInfo processStartInfo = new ProcessStartInfo();
processStartInfo.FileName = exePath;
processStartInfo.Arguments = Arg;
processStartInfo.CreateNoWindow = true;
processStartInfo.RedirectStandardOutput = true;
processStartInfo.RedirectStandardInput = true;
processStartInfo.UseShellExecute = false;

Process process1 = new Process();
process1 = Process.Start(processStartInfo);