zoukankan      html  css  js  c++  java
  • 做安装包,安装后自动运行程序

    1 新建安装部署项目

    打开VS2005,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目),然后点击确定。

    2 安装向导

    关闭后打开安装向导,点击下一步,或者直接点击完成。

    3 开始制作

    安装向导完成后即可进入项目文件夹:

    双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来。然后右击你的文件,创建快捷方式,然后把快捷方式分别复制或剪切到左边的"用户的'程序'菜单"和"用户桌面"中。这样安装程序安装完成后会在 "开始->所有程序"和"桌面"上生成程序的快捷方式。也可以直接在"用户的'程序'菜单"和"用户桌面"相应目录下新建快捷方式,然后定位到你的文件。

    然后右击左边的"应用程序文件夹"打开属性对话框:将属性中的"DefaultLocation"的路径中的"[Manufacturer]"去掉,不然的话做好的安装程序默认安装目录会是"C:Program Files你的用户名安装解决方案名称";

    然后打开解决方案管理器,右击你的解决方案名称,选择属性:打开的属性页中,选择"系统必备", 在打开的系统必备页中,在"指定系统必备安装组件的位置"中选中如下选择项:从与我的应用程序相同的位置下载系统必备组件。选上以后,在生成的安装文件包中包含.NetFramework组件 。好了,这样就完成99%了,然后点击"生成->生成解决方案",生成成功!

    我以前参考过的,希望对你有帮助。

    http://hi.baidu.com/rivers811/blog/item/1fae4716820ced4c20a4e9ef.html

    http://hi.baidu.com/xw010203/blog/item/90f66603b0f61e8fd43f7ca2.html

    安装完成后自动启动程序

    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",完成添加.

  • 相关阅读:
    [Android Studio] Android studio 多渠道打包(超简洁版)
    AlarmManager、PendingIntent的使用附件Home监听十分钟后再度启动应用取消服务
    share Windows下AndroidStudio 中使用Git(AndroidStudio项目于GitHub关联)
    Flex 调用webService
    mac下安装应用及常用快捷键
    mac下设置maven环境
    0302关于软件工程的思考
    文法评论
    C语言文法
    44-小组词法分析
  • 原文地址:https://www.cnblogs.com/lisengl/p/3255392.html
Copyright © 2011-2022 走看看