下面的演练演示如何创建一个 DLL 自定义操作,以便在安装结束时将用户直接连接到某个网页。 可使用自定义操作在完成安装后运行代码。

注意

对于在以下说明中使用的某些 Visual Studio 用户界面元素,您的计算机可能会显示不同的名称或位置。这些元素取决于您所使用的 Visual Studio 版本和您所使用的设置。有关更多信息,请参见 Visual Studio 设置。

创建自定义操作
  1. 在“文件”菜单上,单击“新建项目”。

  2. 在“新建项目”对话框中,选择“Windows”,再单击“类库”。 在“名称”框中键入“OpenWeb”。

    该项目随即添加到“解决方案资源管理器”中。

  3. 在“项目”菜单上,单击“添加类”,然后在“添加新项”对话框中单击“安装程序类”。 接受默认名称 Installer1,然后单击“添加”。

  4. 通过在设计图面上单击“单击此处切换到代码视图”(或右击设计图面,再单击“查看代码”),切换到代码视图。

  5. 在“代码编辑器”中,将以下代码(可打开 Web 浏览器)添加到 Installer1 代码文件中的构造函数下。

        [System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]public override void Install(IDictionary stateSaver){base.Install(stateSaver);}[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]public override void Commit(IDictionary savedState){base.Commit(savedState);System.Diagnostics.Process.Start("http://www.microsoft.com");}[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]public override void Rollback(IDictionary savedState){base.Rollback(savedState);}[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand)]public override void Uninstall(IDictionary savedState){base.Uninstall(savedState);}

注意

如果您键入 Public Overrides,然后键入空格,IntelliSense 会提供一个方法和属性列表;您可以从该列表中选择“Commit”并获得完整的声明。 对 Install、Rollback 和 Uninstall 方法重复上述操作。

  1. 在“解决方案资源管理器”中,右击 Class1 代码文件,再单击“删除”(因为它是不必要的)。
添加部署项目
  1. 在“文件”菜单上指向“添加”,然后单击“新建项目”。

  2. 在“添加新项目”对话框中,展开“其他项目类型”节点,展开“安装和部署项目”,单击“Visual Studio Installer”,然后再单击“安装项目”。 在“名称”框中键入“自定义操作安装程序”。

    项目添加到“解决方案资源管理器”中,并显示“文件系统编辑器”。

  3. 在“文件系统编辑器”中,在左窗格中选择“应用程序文件夹”。 在“操作”菜单上指向“添加”,然后单击“项目输出”。

  4. 在“添加项目输出组”对话框中,OpenWeb 将显示在“项目”列表中。 选择“主输出”。

    “OpenWeb 的主输出(活动)”显示在“应用程序文件夹”中。

添加自定义操作
  1. 在“解决方案资源管理器”中选择“自定义操作安装程序”项目。 在“视图”菜单上指向“编辑器”,然后单击“自定义操作”。

    此时将会显示“自定义操作编辑器”。

  2. 在“自定义操作编辑器”中选择“提交”节点。 在“操作”菜单上,单击“添加自定义操作”。

  3. 在“选择项目中的项”对话框中,双击“应用程序文件夹”。 选择“OpenWeb 的主输出”。

    “主输出来自 OpenWeb”显示在“自定义操作编辑器”中“提交”节点的下方。

  4. 在“属性”窗口中,确保将“InstallerClass”属性设置为“True”(这是默认值)。

  5. 在“自定义操作编辑器”中,选择“Install”节点,并将“OpenWeb 的主输出”添加到该节点中(类似于“Commit”节点)。

  6. 在“生成”菜单上,单击“生成自定义操作安装程序”。

在开发计算机上安装
  • 在“解决方案资源管理器”中选择“自定义操作安装程序”项目。 在“项目”菜单上,单击“安装”。

    这将在开发计算机上运行安装程序并安装“自定义操作安装程序”。 在安装结束时,Internet Explorer 应当启动并打开 Microsoft.com 网站。

    注意

    您必须在计算机上拥有安装权限才能运行该安装程序。

部署到其他计算机
  1. 在“解决方案资源管理器”中,右击安装项目,然后单击“在 Windows 资源管理器中打开文件夹”。

  2. 导航到项目输出,并将 Custom Action Installer.msi、Setup.exe 和该目录下的所有其他文件和子目录复制到另一台计算机上。

    注意

    若要在未联网的计算机上安装,请将文件复制到诸如 CD-ROM 的传统媒体中。

  3. 在目标计算机上双击 Setup.exe 运行安装程序。

    在安装结束时,Internet Explorer 应当启动并打开 Microsoft.com 网站。

    注意

    您必须在计算机上拥有安装权限才能运行该安装程序。

    注意

    如果 .NET Framework 尚未安装在目标计算机上,此部署将会安装它,安装过程可能需要几分钟的时间。

卸载应用程序
  1. 在“控制面板”中,双击“添加或删除程序”。

  2. 在“添加或删除程序”对话框中,选择“自定义操作安装程序”,然后单击“删除”。

    提示

    若要从开发计算机上卸载,请在“自定义操作安装程序”项目在“解决方案资源管理器”中打开并选定的情况下,单击“项目”菜单上的“卸载”。

转自:演练:创建自定义操作

转载于:https://www.cnblogs.com/jiguixin/archive/2011/09/27/2193024.html

VS2010 部署程序在安装完成后自动启动外部程序相关推荐

  1. windows服务安装完后自动启动

    服务写完后修改机会很少,老是忘记服务安装完后自动启动 找到Installer的AfterInstall事件. 注意是System.Configuration.Install.Installer下的事件 ...

  2. 跟着SY速学Ubuntu系列一:作为程序员,安装Ubuntu后我做的事情。

    sudo apt-get update && sudo apt-get upgrade sudo apt-get install vim sudo apt-get install ax ...

  3. NuGet程序包安装SQLite后完全抽离出SQLite之入门介绍及注意事项,你真的懂了吗?...

    前言 近几天的几篇文章讲的内容非前面内容如系列的讲解,这几天文章都是我在项目中遇到的问题以及重新学习的知识,所以和大家分享一下,关于SQLite的文章多如牛毛,但是有些大多已经过时,为什么说过时,之前 ...

  4. InstallShield 2010打包安装程序,安装完成后执行某个程序

    需要注意的几点 1.选择InstallScript Project. 2.选择InstallScript,选择DefaultFeature,选择Installed. 3. //------------ ...

  5. android 自动更新 覆盖安装后 自动启动的问题

    在做自动更新的时候遇到的一个问题,覆盖安装之后 就退出了,我想要的结果是安装完成后自动启动应用. 看网上不少人都是让写一个静态广播监听来实现,但是这样就太麻烦了.其实可以这么来搞,实现代码: (检测版 ...

  6. C#程序打包与部署,包括处理安装向导中用户输入的参数,创建卸载程序。

    ① 1,解决方案-添加-新建项目-其他项目类型-安装和部署-安装项目,输入名称Setup,点"确定" 2,添加主输出:单击左侧"应用程序文件夹",右侧右键-添加 ...

  7. 开发和部署Pocket Pc 安装程序

    开发和部署Pocket Pc 安装程序 原作者: Ralph Arvesen Vertigo Software, Inc. 发表于2003年3月MSDN 翻译者:liu_sir 应用: Microso ...

  8. Setup Factory 怎样让打包的程序在安装后自动运行

    最近接到一个任务,就是让打包好的程序安装好之后自动运行,让我们看看是如何实现的吧. 正文 前面创建工程的步骤就省略了,直接从具体操作开始 第一步:在菜单栏中点击Project,然后单击Screen 第 ...

  9. CentOS部署JAVA程序、安装Tomcat以及安装导入mysql文件的方法

    注意:由于流程太过于繁杂,且坑多,这里只保留关键步骤,具体小问题百度! ________________________ 先进入CentOS6.8图形化界面(如阿里云没有默认的图形化界面,自己去安装h ...

  10. vcenter6.0+EXSI6.0 部署虚拟机win10,安装vmtools后不能显示桌面

    vcenter6.0+EXSI6.0的环境,发现部署了一台win10虚拟机,安装vmtools后就显示不了桌面了.安装的vmtool版本是:9536 重新下载了版本:10346.安装后可正常显示 下载 ...

最新文章

  1. 如何委婉的表达你的心思?
  2. struts2标签集
  3. JVM 调优实战--JVM字节码
  4. Google的Project Stream准备在Chrome中播放AAA控制台游戏
  5. UI设计师必知:link和@import引用css文件方法的区别
  6. python nodemcu_python开发nodemcu(一)
  7. java设计一百亿的计算器_请设计一个一百亿的计算器
  8. Databricks文档01----Azure Databricks初探
  9. oracle 的 dml,Oracle——DML
  10. ffplay 源码 option 部分阅读ing
  11. 190501每日一句
  12. GB28181 密解播放器
  13. 固体发动机内弹道matlab,固体火箭发动机内弹道性能的仿真研究
  14. vs项目文件夹进行分类管理
  15. Word和Excel怎样进入安全模式?
  16. 精密仪器及机械类毕业论文文献包含哪些?
  17. php 日期format不要零_DateFormat PHP Class (php 处置日期)
  18. Home Assistant + 树莓派:强大的智能家居系统
  19. 看的懂的scipy.sparse.csr_matrix和scipy.sparse.csc_matrix
  20. IPMP国际项目管理资质认证培训班

热门文章

  1. 【转】如何更改VS2005的启动环境
  2. jvm_tool jconsole/ jprofiler/ JProbe/ VirtualVm/ TPV/ YourKit/ ITCAM/ MAT/ MDD4J
  3. php检测php.ini是否配制正确
  4. 第四章(数组) 编程题 1
  5. 2014年度辛星css教程夏季版第五节
  6. LayoutInflater
  7. 【LOJ】 #2025. 「JLOI / SHOI2016」方
  8. springmvc环境的搭建
  9. jQuery,Table表头固定插件chromatable存在的问题及解决办法
  10. 无法连接 Plugins Market 失效的日子