创建微软安装包
1) 创建安装和部署项目:
① 右 击当前解决方案——Add——New Project,在弹出的窗口中选择Other Project Types——Setup and Deployment——Setup Project;然后在下方文本框中输入Name,点击“OK”按钮。新添加的安装和部署项目会出现在解决方案列表中。
2) 创建组件注册项目:
① 右击当前解决方案——Add——New Project,在弹出的窗口中选择 Visual C#——Class Library;然后在下方文本框中输入Name,点击“OK”按钮。新添加的项目会出现在解决方案列表中。
② 右击该项目——Add——New Item,在弹出的窗口中选择Installer Class;在下方文本框中输入Name,点击“Add”按钮添加文件并关闭窗口。
③ 选中刚添加的文件,按F7转到代码页,在构造函数下方添加以下方法:
01 |
protected override void OnAfterInstall(IDictionary savedState)
|
04 |
base .OnAfterInstall(savedState);
|
08 |
string LogicDir = Context.Parameters[ "LogicDir" ];
|
14 |
System.Diagnostics.Process.Start( "cmd" , @"/s regsvr32 " + @LogicDir + @"ComUtilities.dll /c" );
|
注意:需要using System.Configuration.Install;
3) 在安装和部署项目中添加要安装的项目和文件:
① 添加项目:右击项目——View——File System,在出现的界面中,右击左列的Application Folder——Add——Project Output,在弹出的窗口中选择相应的Project,然后点击“OK”按钮。多个项目重复多次。在这里我们假设我们开发的项目为MainProject,注册组件的项目名称为RegDll,那么我在弹出的窗口中先选择项目MainProject,点击“OK”后,我在重复添加项目RegDll。
② 添加文件:右击项目——View——File System,在出现的界面中,右击左列的Application Folder——Add——File,在弹出的窗口中选择C:\WINDOWS\system32 \misexec.exe;
③ 创 建快捷方式:在右列中选择Primary output from MainProject(Active),右击 选择Create Shortcut to Primary output from MainProject(Active),你可以按F2给新添加的快捷方式更名。右击msiexec.exe 选择 Create Shortcut to misexec.exe,你可以按F2将刚生成的快捷方式更名为“卸载”;
④ 创建程序组:右击左列的User’s Programs Menu选择 Add——Fold,你可以将新创建的文件夹更名,当软件安装完毕后它将出现在程序组中,然后将上一步创建的两个快捷方式拖到新创建的文件夹中。
⑤ 实现“卸载”的功能:选中安装和部署项目,按F4,复制ProductCode的内容,然后选中“卸载”快捷方式,按F4,将Arguments 的内容更改为:/x 刚复制的ProductCode的内容。
4) 实现在安装时注册组件:
右击安装和部署项目——View——Custom Actions,在出现的界面中右击左列的Install——Add Custom Action,选择Application Folder中的Primary output from RegDll(Active)。

修改“主输出来自RegDll (活动)”的CustomActionData属性为 /LogicDir="[TARGETDIR]\"

5) 自动检测当前系统中MDAC、.Net Framework版本、Windows Installer3.1是否满足版本要求,如果不满足则安装:
右击安装和部署项目选择属性,在弹出的窗口中点击按钮 “Prerequisites”。选中MDAC2.8、.Net Framework2.0、Windows Installer3.1;然后选中Download prerequisites from the same location as my application 单选按钮,点击“OK”,再点击“OK”。
6) Rebuild项目生成安装包。
分享到:
相关推荐
在Virtools 5.0中实现动态打包的完美解决方案,主要涉及以下几个关键步骤: 1. **模块化设计**:首先,你需要对项目进行模块化设计,将不同的功能或内容分割成独立的包。每个包都应该包含其所需的全部资源,如模型...
总而言之,VirTools 5.0动态打包的终极完美解决方案是关于如何高效、灵活地管理和部署项目资源的技术,它结合了库文件的支持和详细的文档指导,为开发者提供了一套全面的方法来优化他们的3D应用。通过理解和掌握这些...
### JMF免安装解决方案详解 #### 一、背景介绍 Java Media Framework (JMF) 是Sun Microsystems为Java平台提供的一套多媒体开发框架,它支持多种媒体格式,包括音频、视频等,并提供了丰富的API来处理多媒体数据。...
标题中的“chm文件因hh.exe缺失不能打开的完美解决方案.rar”揭示了主要问题:用户在尝试打开CHM( Compiled Help Manual,编译帮助手册)文件时遇到了由于hh.exe(HTML Help Executive,HTML帮助执行程序)缺失导致...
### 完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误 #### 背景与问题概述 在使用Python进行软件开发的过程中,经常会遇到将Python脚本打包成可执行文件的需求,特别是在Windows平台上。...
打包的解决方案意味着将所有必要的设计图纸、程序代码和相关文档集中在一起,方便用户在实际操作中快速定位问题和进行必要的调整。 在技术文件中,文档标题通常清晰地反映了内容的主旨。例如,“基于西门子和昆仑通...
1.简介这是Unity Android APP il2cpp热更完美解决方案的Demo( )的说明。和现有的热更解决方案不同的是,他不会约会多余的语言(只是UnityyScript,c#...),对Unityy程序设计和编码没有任何限制。你可以在预先和...
是将净化工程与数字信息化完美融合,将所有关于患者的信息以最佳方式进行系统集成,使手术医生、麻醉医生、手术护士获得全面的患者信息、更多的影像支持、精确的手术导航、通畅的外界信息交流,振邦为整个手术提供...
八月最新完美运营版PHP在线客服系统服务器完整打包的出现,对于寻求成本效益和高效沟通解决方案的企业来说,无疑是一大福音。此系统不仅功能完备,而且经过精心优化,适合在服务器上部署,几乎不占用额外资源。用户...
其实可以通过很多方法实现应用程序的安装和部署工作,VS2010对于应用程序的安装部署提供了完美的解决方案。本章将给大家主要介绍VS2010提供的部署Windows应用程序的策略Windows Installer,以便大家了解我们开发的...
对于新项目,可能更适合从一开始就采用 SSR 框架,而对于已有的 CSR 应用,Rendora 这样的工具可以提供更加灵活的解决方案,降低迁移成本。 总的来说,React 服务端渲染是一种优化用户体验和 SEO 的重要技术,但...
在这个“XX蜜月旅行解决方案”中,我们将深入探讨如何规划一次完美无瑕的蜜月之旅,包括目的地选择、行程规划、预算管理、旅行安全以及实用的旅行技巧。 1. **目的地选择**:蜜月旅行的目的地应根据夫妇双方的兴趣...
本文将对标题为“PHP源码-仿代下狗,素材代下载搜索引擎系统自带火车头采集接口源码素材付费下载系统整站打包完美运营版本.zip”的软件进行详细的知识点总结。首先,该软件是一个基于PHP开发的仿代下狗的素材代下载...
- **软件开发**:开发基于Perfect Codec的定制化播放器或解码解决方案,满足特定行业或用户群体的需求。 - **内容创作**:通过高效的解码和播放能力,提高视频制作和编辑的效率,为内容创作者提供技术支持。 不过,...
是将净化工程与数字信息化完美融合,将所有关于患者的信息以最佳方式进行系统集成,使手术医生、麻醉医生、手术护士获得全面的患者信息、更多的影像支持、精确的手术导航、通畅的外界信息交流,振邦为整个手术提供...
总的来说,`auto-py-to-exe`是一个非常实用的工具,对于那些希望快速将Python项目转化为可分发的Windows应用的开发者来说,它提供了一种简单易用的解决方案。同时,`pyinstaller`作为其基础,为那些需要更精细控制...
本文将详细解析这个问题的原因,并提供一种完美的解决方案。 首先,问题的根源在于Webpack的打包机制。Webpack在处理CSS和JS文件时,会将它们转换为基于项目根目录的绝对路径。然而,图片等静态资源的路径通常是...
Inno Setup以其易用性和强大的定制性受到开发者喜爱,NSIS则支持脚本编写,提供了高度的灵活性,而WiX Toolset则是一个开源解决方案,特别适合Windows平台的 MSI 安装包创建。 3. **打包步骤**: - **配置设置**:...
总而言之,PPT打包器是一个强大的工具,它解决了在无Office环境播放PPT/PPTX文件的问题,提供了便捷的打包和分发解决方案,尤其适合那些需要在各种设备上展示内容的专业人士。其易于使用、支持多种格式以及高级定制...