winform安装后直接启动程序

项目中遇到程序安装后直接启动的需求,在网上查了方法,现做记录如下:
1、新建一个winform项目
2、在项目中添加安装类,项目右键->添加->新建项->选择安装程序类
3、添加如下代码:

/// 
        /// 重写安装完成后函数
        /// 实现安装完成后自动启动已安装的程序
        /// 
        /// 
        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 + "//PrintServer.exe");
            //修改后如下
            System.Diagnostics.Process.Start(asm.Location);
        }
        /// 
        /// 重写安装过程方法
        /// 
        /// 
        public override void Install(IDictionary stateSaver)
        {
            base.Install(stateSaver);
        }
        /// 
        /// 重写安装之前方法
        /// 
        /// 
        protected override void OnBeforeInstall(IDictionary savedState)
        {
            base.OnBeforeInstall(savedState);
        }
        /// 
        /// 重写卸载方法
        /// 
        /// 
        public override void Uninstall(IDictionary savedState)
        {
            base.Uninstall(savedState);
        }
        /// 
        /// 重写回滚方法
        /// 
        /// 
        public override void Rollback(IDictionary savedState)
        {
            base.Rollback(savedState);
        } 

4、添加安装项目,解决方案右键->添加->新建项目->其他类型项目->Visual Studio Installer
5、右键安装项目->view->自定义操作,在Install->右键->添加自定义操作->选择"应用程序文件夹"->选择"主输出",完成添加

你可能感兴趣的:(winform安装后直接启动程序)