C# 如何向用户显示安装程序

C# 如何向用户显示安装程序,c#,windows,installation,windows-installer,C#,Windows,Installation,Windows Installer,当用户单击我的应用程序上的更新时,我想显示安装程序。 安装程序驻留在服务器上 向用户显示msi或安装程序的最佳方式是什么 有什么例子吗 谢谢首先,您需要将安装包复制到客户端。您可以使用WebClient传输二进制数据或下载 然后,您可以使用Process.Start和msiexec实用程序执行安装包 msiexec /quiet /i "c:\myinstallationpackage.msi" // for hidden installation msiexec /qb /i "c:\myin

当用户单击我的应用程序上的更新时,我想显示安装程序。 安装程序驻留在服务器上

向用户显示msi或安装程序的最佳方式是什么

有什么例子吗


谢谢

首先,您需要将安装包复制到客户端。您可以使用
WebClient
传输二进制数据或下载

然后,您可以使用
Process.Start
msiexec
实用程序执行安装包

msiexec /quiet /i "c:\myinstallationpackage.msi" // for hidden installation
msiexec /qb /i "c:\myinstallationpackage.msi" // for installation with base steps without any actions from the user
msiexec /i "c:\myinstallationpackage.msi" // usual installation

下载msi文件后,只需使用System.Diagnostics命名空间中的Process类运行它

Windows会在那之后处理好的

稍后编辑: 示例代码:

Process.Start(@"C:\install.msi", string.Empty);

当然,下载的.msi文件的路径应该指向一个临时目录(一个好的选择是Windows临时文件夹本身),但是我们的想法是调用Process类的静态方法Start()。

出于兴趣,您有没有看过使用ClickOnce()的方法