我需要能够在最终用户计算机上安装水晶报告,但网络安全性不允许在普通用户登录时使用,因此它必须以不同的用户身份运行。在每个桌面上安装。
我正在尝试创建一个小应用程序,允许任何用户安装水晶报告..到目前为止我有:
Process p = new Process();
p.StartInfo.FileName = @"C:\cabs\CRRuntime_32bit_13_0_5.msi";
p.StartInfo.Arguments = "/i \"C:\\Application.msi\"/qn";
p.StartInfo.UserName = uname;
p.StartInfo.Password = pword;
p.StartInfo.Domain = domain;
p.StartInfo.UseShellExecute = false;
try
{
p.Start();
}
catch(Exception er)
{
MessageBox.Show(er.Message);
}
当我尝试运行此代码时,我看到消息"指定的可执行文件不是此OS平台的有效应用程序"
我错过了什么吗?
干杯
答案 0 :(得分:0)
MSI不是Windows中的可执行文件。您应该使用msi文件作为参数
调用msiexec
Process p = new Process();
p.StartInfo.FileName = @"C:\Windows\System32\msiexec.exe";
p.StartInfo.Arguments = @"C:\cabs\CRRuntime_32bit_13_0_5.msi";
p.StartInfo.UserName = uname;
p.StartInfo.Password = pword;
p.StartInfo.Domain = domain;
p.StartInfo.UseShellExecute = false;