我有一个应用程序,我可以使用它从目录中的多个 MSI(相同的 msi,不同版本)中进行选择,并且我将能够从该应用程序安装或卸载。
我拉入了 MSI 的列表,完整的路径,
string MSILocation = @"C:\test\";
string[] MSIFiles = Directory.GetFiles(MSILocation, "*.MSI", SearchOption.TopDirectoryOnly);
从这里我填充一个列表视图,一旦选择了一个,我点击安装按钮。但是当我浏览我的安装代码时,逐字记录似乎搞砸了。
string MSIname = lboMSIList.SelectedItem.ToString();
Process p = new Process();
p.StartInfo.FileName = "MSIEXEC.EXE";
p.StartInfo.Arguments = @"/i " + MSIname;
p.Start();
即使列表视图以单 / 显示文件,最终结果总是以双 /
那里的某个地方丢失了文字字符串。
如果我更改代码并运行.FileName = @"msiexec.exe /i C:\test\test1.msi"它工作得很好,但我需要能够从文件名列表中进行选择。
有任何想法吗?