热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

VS2012的安装项目只能用InstallShieldLimitedEdition[附资源下载]

以前版本的VisualStuido中安装项目都可以使用微软自家的VisualStudioInstaller,但是到了VS2012这一切都变了,只能用InstallShieldL

以前版本的Visual
Stuido中安装项目都可以使用微软自家的Visual Studio Installer,但是到了VS2012这一切都变了,只能用InstallShield
Limited Edition。为这个鬼东西折腾了几天,把经验分享出来,留个脚印,以免同样上当。


1.VS2012及更高版本的安装项目

 首先,从VS2012开始,以前的Visual
Studio Installer不复存在,打开VS2012,新建项目中的“安装和部署”项目模版,多了一个“启用InstallShield Limited
Edition”,双击可以得到这个东东的下载页面,直接用邮箱进行注册后,会发下载地址和注册码到邮箱。为了避免麻烦,本文后面有下载地址,并提供了一组注册码。

其次,InstallShield
Limited
Edition这个东东大家如果做过项目打包,应该都知道,是大名鼎鼎的项目打包工具,非常庞大,功能也强大(听说而已,我也不太会)。VS2012已经不支持Visual
Studio
Installer了,甚至以前的项目都打不开,只能通过转换到新的安装模版。心里不禁就想到,为啥自己的东西不用,还搞一个别人的,是个限制版,功能更全面就要升级购买,这是为什么?

最后,经过好多努力,到处找资料,看有没有Visual
Studio Installer能不能在VS2012中使用,或者InstallShield Limited
Edition的使用方法,可惜最后只在百度找到了几篇大概的入门图文教程,用处不大。在微软MSDN的网站,有如下的回复“ 

Here
is everything I know about the InstallShield software included in VS2010. Note
that this is NOT Microsoft software, so they don‘t support it, they don‘t update
it, they don‘t upgrade it, etc. If
you have questions about InstallShield, the best place to start is the
InstallShield 2010 Limited Edition Evaluator Guide。。。。”

>意思大概就是“InstallShield
软件从VS2010版本就开始包括在VS中,它不是微软的软件,所以VS不提供支持和更新,如果对InstallShield有疑问,可以到官方网站去。。。”

>我次奥,这不是明显的坑爹吗,不是你的产品,不提供支持,你还替代自己的东东,拿来用。。


 2.VS2012中InstallShield
Limited Edition的使用及问题

其实VS2010也可以使用InstallShield
Limited Edition,不过VS2010同时还能使用Visual Stuido
Installer。以前这个问题估计很多人没注意。导致VS2012开始,只能使用InstallShield Limited
Edition的时候,有些人措手不及,包括我自己。


2.1
InstallShield Limited Edition的常规安装没问题

InstallShield
Limited
Edition的常规安装项目,其实也很简单,简单的设置一下就可以了,我在最后提供一篇网上下载的PDF图文教程,一般安装那上面的顺序,就没问题。常规安装项目,是指简单的复制.NET项目的生成文件到系统目录,搞搞快捷方式,设置一些安装界面和软件信息等。特殊一点的安装当然就是后面所说的有关com组件和ActiveX控件的安装。


2.2
ActiveX控件的安装

问题起源于VS2010的一个ActiveX控件安装项目,到VS2012后,使用InstallShield
Limited Edition安装基本的使用过程,都会出现一个>>Q109435: Error -6109class="Apple-converted-space"> Internal
build error.
的错误
。经过在InstallShield官网的一番折腾,找到了可能原因之一:由于开发机可能已经注册或安装过次控件,导致在生成时不能注册和注销成功。后来手动打开regedit进行查找,把该控件的注册表条目都删除,果然生成成功了。狂喜了好一阵,没想到,这还只是开始;

生成成功后,我想当然,安装肯定没问题,结果,又来了:错误:-1605
此操作只对当前安装产品有效
。又搞了一阵,无果,最终决定放弃。采用installShield2010的破解版来试试,installShield2010专业版功能当然更强大一点,搞了一晚上,安装包是没错误,但在安装的时候还是com组件注册错误,我崩溃了,最终采用了备用方案,彻底放弃“InstallShield
Limited Edition” 


2.3
VS2012项目打包不使用InstallShield 的简单方法

为了解决VS2012开发打包ActiveX控件的问题,只能采用这个备用方案了,肯定可以解决问题,只不过不是最好的方法,好在能解决。

>>方法很简单“VS2012开发,VS2010的Visual Studio
Installer打包,1个项目2个解决方案文件即可”

>ActiveX控件的注册用Visual
Stuido Installer是很容易解决和制作的(已经成功过)。因此VS2012开发后,使用VS2010打包是完全没问题,也没冲突的。但是现在.NET
4.5出来了,用.net
4.5制作的,能不能做,还有点不太确定,我想想问题应该不大,因为ActiveX注册和注册表有关,和.net版本关系貌似不大。

其实使用专业版本的项目打包工具,肯定也能解决,只不过小东西,花那么多时间去重新搞,没必要。 


3.软件、教程与注册码下载

VS2012中的InstallShield
Limited Edition下载及注册码:http://www.kuaipan.cn/file/id_4279479643944045.htm

InstallShield
2010专业版下载:http://www.kuaipan.cn/file/id_4279479643944046.htm

VS2012中InstallShield
Limited Edition入门教程PDF:http://www.kuaipan.cn/file/id_4279479643944044.htm


推荐阅读
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 本文介绍了如何通过C#语言调用动态链接库(DLL)中的函数来实现IC卡的基本操作,包括初始化设备、设置密码模式、获取设备状态等,并详细展示了将TextBox中的数据写入IC卡的具体实现方法。 ... [详细]
  • 本文详细介绍了iOS应用的生命周期,包括各个状态及其转换过程中的关键方法调用。 ... [详细]
  • 如何在PHP中安装Xdebug扩展
    本文介绍了如何从PECL下载并编译安装Xdebug扩展,以及如何配置PHP和PHPStorm以启用调试功能。 ... [详细]
  • 解决Visual Studio Code中PHP Intelephense误报问题
    PHP作为一种高度灵活的编程语言,其代码结构可能导致Intelephense插件在某些情况下报告不必要的错误或警告。自1.3.3版本起,Intelephense引入了多个配置选项,允许用户根据具体的工作环境和编程风格调整这些诊断信息的显示。 ... [详细]
  • 网络流24题——试题库问题
    题目描述:假设一个试题库中有n道试题。每道试题都标明了所属类别。同一道题可能有多个类别属性。现要从题库中抽取m道题组成试卷。并要求试卷包含指定类型的试题。试设计一个满足要求的组卷算 ... [详细]
  • 本文探讨了程序员这一职业的本质,认为他们是专注于问题解决的专业人士。文章深入分析了他们的日常工作状态、个人品质以及面对挑战时的态度,强调了编程不仅是一项技术活动,更是个人成长和精神修炼的过程。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 本文详细介绍了JQuery Mobile框架中特有的事件和方法,帮助开发者更好地理解和应用这些特性,提升移动Web开发的效率。 ... [详细]
  • 本文详细介绍了C++中的构造函数,包括其定义、特点以及如何通过构造函数进行对象的初始化。此外,还探讨了转换构造函数的概念及其在不同情境下的应用,以及如何避免不必要的隐式类型转换。 ... [详细]
  • 项目风险管理策略与实践
    本文探讨了项目风险管理的关键环节,包括风险管理规划、风险识别、风险分析(定性和定量)、风险应对策略规划及风险控制。旨在通过系统的方法提升项目成功率,减少不确定因素对项目的影响。 ... [详细]
  • importjava.io.*;importjava.util.*;publicclass五子棋游戏{staticintm1;staticintn1;staticfinalintS ... [详细]
  • 本文详细介绍了Oracle 11g中的创建表空间的方法,以及如何设置客户端和服务端的基本配置,包括用户管理、环境变量配置等。 ... [详细]
  • 本文探讨了在一个物理隔离的环境中构建数据交换平台所面临的挑战,包括但不限于数据加密、传输监控及确保文件交换的安全性和可靠性。同时,作者结合自身项目经验,分享了项目规划、实施过程中的关键决策及其背后的思考。 ... [详细]
author-avatar
卖火柴的kula1988zkef
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有