1.新建一个空的项目InstallCompenent,步骤为:解决方案->右键添加->新建项目->选择"空项目"->输入名称"InstallCompenent"->确定,完成项目的添加.
2.在InstallCompenent项目中右键->添加->新建项->选择安装程序类->输入名称"Installer",完成installer类的添加.
修改代码为:
/// <summary>
/// 功能是做安装项目主项目输出
/// 实现安装过程中的一些操作
/// 如:安装完成后启动项目
/// </summary>
[RunInstaller(true)]
public partial class Installer : Installer
{
/// <summary>
/// 应用程序入口
/// </summary>
public static void Main()
{
}
/// <summary>
/// 构造函数
/// </summary>
public ECSuitsInstaller()
{
InitializeComponent();
}
/// <summary>
/// 重写安装完成后函数
/// 实现安装完成后自动启动已安装的程序
/// </summary>
/// <param name="savedState"></param>
protected override void OnAfterInstall(IDictionary savedState)
{
base.OnAfterInstall(savedState);
Assembly asm = Assembly.GetExecutingAssembly();
string path = asm.Location.Remove(asm.Location.LastIndexOf("//")) + "//";
System.Diagnostics.Process.Start(path + "//ECSuits.exe");
}
/// <summary>
/// 重写安装过程方法
/// </summary>
/// <param name="stateSaver"></param>
public override void Install(IDictionary stateSaver)
{
base.Install(stateSaver);
}
/// <summary>
/// 重写安装之前方法
/// </summary>
/// <param name="savedState"></param>
protected override void OnBeforeInstall(IDictionary savedState)
{
base.OnBeforeInstall(savedState);
}
/// <summary>
/// 重写卸载方法
/// </summary>
/// <param name="savedState"></param>
public override void Uninstall(IDictionary savedState)
{
base.Uninstall(savedState);
}
/// <summary>
/// 重写回滚方法
/// </summary>
/// <param name="savedState"></param>
public override void Rollback(IDictionary savedState)
{
base.Rollback(savedState);
}
}
3.在安装项目中右键->添加项目输出->选择"项目"->InstallCompenent.
完成主输出项目的添加.
4.打开自定义操作编辑器,在安装->右键->添加自定义操作->选择"应用程序文件夹"->选择"主输出来自InstallCompenent",完成添加.
c# 安装部署完成后自动启动程序
最新推荐文章于 2024-01-29 20:26:07 发布