有关VS2008制作安装包时遇到的问题详解
公司最近要做一个安装包,然而在做的时候遇到好多问题,这里我一一记录下来
一、先用VS2008建一个Setup项目,添加你需要打包的文件,这里我就不具体介绍了,网上一搜都好多,这时我们一般都需要在安装前和安装后做一些处理,
这时新建一个项目于,
可以写一个Installer派生类
在里面事件里面做一些处理,具体的大多数网上也有
但是这里我有一个问题就是,我事件都写了,但是只有安装后的事件有触发,安装前的事件没有,在网上找了好多资料,也没解决我的问题,后来放弃了。
如果有朋友知道请告诉我,给我留言,不甚感激!
二、最重要的来了,就是安装包如何制作多语言,在不同的系统下自动进行选择语言,然而项目中只能选择语言,
无法做到根据系统来选择,最后查了好多资料和在同事的帮助下实现了
第一步:先把你要的语言msi都生成出来,这里我生成了三个
然后呢我们需要生成语言别差量mst文件,
如何生成呢?
1、先看下你的本地有没有装Windows SDK,路径一般在C:\Program Files\Microsoft SDKs\Windows,没有到https://www.microsoft.com/en-us/download/details.aspx?id=3138这里下载,安装过程参照这里https://www.hass.de/content/how-create-msi-packages-multilingual-user-interface-mui
2、使用对比工具产生语言转换包,MsiTran.exe 这个在Microsoft SDKs\Windows\v6.0A\Bin下,打开Visual Studio 2008 命令提示,指定到你的目录下,之后执行,当然Setup_cn.msi 和Setup_tw.msi 就是我们之前提前生成的,英文的也同理。
MsiTran.exe -g Setup_cn.msi Setup_tw.msi tw.mst
3.将mst 包嵌入到你最后要的msi文件中,这里需要用到WiSubStg.vbs 脚本,我们用命令行指定到含有WiSubStg.vbs 这个的目录下,你可以在c盘搜下
path就是你安装包所在目录
WiSubStg.vbs path/Setup_cn.msi path/en.mst 1033
WiSubStg.vbs path/Setup_cn.msi path/tw.mst 1028
(其中2052为中文简体的ProductLanguage,当然,Setup_cn.msi的ProductLanguage也必须为2052,1028是繁体的ProductLanguage)
WiLangId.vbs Setup_cn.msi Package 1033,2052,1028
(自然该Setup_cn.msi将包含1033 en-us 和 2052 zh-cn,1028 三种语言)
这样我们就制作好了,小伙伴可以测试下!
有关VS2008制作安装包时遇到的问题详解的更多相关文章
- HM NIS Edit制作安装包时检测是否有.net4.6环境,没有的时候自动安装。
把.net4.6安装包打包进安装程序. 关键脚本如下: 头部引用字符串对比库 !include "WordFunc.nsh" 新建一个Section,.Net4.6的文件版本号是4 ...
- 使用Visual Studio制作安装包
目 录 第1章 合并模块 3 1.1 SystemDll 3 1.1.1 收集文件 3 1.1.2 新建项目 4 1.1.3 增加自定义文件夹 4 1.1.4 设置部署位 ...
- VS 制作安装包小窥
难得忙里偷闲,看到有关VS制作安装包,按下文小试一把,还行,比不上Installshield. 首先在打开 VS2010 > 文件 >新建项目 创建一个安装项目 XXX 在“目 ...
- [转载]如何用Visual Studio制作安装包
原文地址:如何用Visual Studio制作安装包作者:蓝羽幽游 环境:Microsoft Visual Studio 2010 语言:C# 构架:.NET Framework 2.0 解决方案名称 ...
- 使用VS2015制作安装包( 含相关的下载链接)
补充: 在看下面的教程过程中,如果在下面的步聚1中没有 " Visual Studio Installer", 则需要通过下面的链接进行安装 Visual Studio Insta ...
- NSIS制作安装包笔记(一):NSIS介绍、使用NSIS默认向导脚本制作Windows安装包
前言 做产品时,定制的自定义安装界面常有的,使用NSIS + Qt可以完美的定制基于QT的安装界面,先从纯NSIS开始,制作常规的安装包. 应用程序的发布方式 应用程序发布的时候,具备以下 ...
- 循序渐进做项目系列(5):制作安装包,谁人都可以!——VS制作安装包简明教程
一开始让我做安装包的时候,其实我是拒绝的.因为我根本就不会做安装包.查了资料之后,我很懵,很晕,很乱,因为不清晰,不简明,不直白.然而经过一番彷徨的挣扎,我终于发现:制作安装包,谁人都可以!故挥狼毫, ...
- 使用Qt installer framework制作安装包
一.介绍 使用Qt库开发的应用程序,一般有两种发布方式:(1)静态编译发布.这种方式使得程序在编译的时候会将Qt核心库全部编译到一个可执行文件中.其优势是简单单一,所有的依赖库都集中在一起,其缺点也很 ...
- 【原创】VB6.0应用程序安装包的生成(Setup Factory 9.0制作安装包的方法)
VB6.0应用程序安装包的生成,利用其自带的打包工具生成的安装程序很简陋,一点不美观:如果想让自己的应用程序安装的时候显得高大上一点,本教程提供使用Setup Factory 9.0制作安装包的方法. ...
随机推荐
- TCPL 行计数
C programming language: P13 行计数 e.g. #include <stdio.h>int main(void){ int c, nb, nt, nl; ...
- 轮播图插件myFocus使用
myFocus官网下载源码,本文是v2.0.1版,解压后如下 将js包内文件拷入工程 在工程内引入 <script src="js/myfocus-2.0.1.min.js" ...
- ORACLE视图添加备注
ORACLE视图添加备注 版权声明:本文为博主原创文章,未经博主允许不得转载. create or replace view oes_material_series_ref as select t.p ...
- oracle正则表达式regexp_like的用法详解
oracle正则表达式regexp_like的用法详解 /*ORACLE中的支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与IN ...
- CSS转载备忘
原文地址:http://www.cnblogs.com/coffeedeveloper/p/3145790.html#html 转载内容: 对CSS中的Position.Float属性的一些深入探讨 ...
- Umbraco安装权限问题
当安装或升级,甚至是使用Umbraco时,如果出现一些莫名其妙的问题. 估计都是权限出了问题,用心参考下文: https://our.umbraco.org/documentation/Getting ...
- C#实现邮件发送功能
发送邮件所用的核心知识点 微软封装好的MailMessage类:主要处理发送邮件的内容(如:收发人地址.标题.主体.图片等等) 微软封装好的SmtpClient类:主要处理用smtp方式发送此邮件的配 ...
- 官方原版Adobe Acrobat XI Pro v11.0.0 序列号激活 可升级更新
使用本人制作的正版激活向导,可以直接使用 注册机算号激活Adobe Acrobat XI Pro11 激活后可以直接官网升级更新软件,永久使用.下面是激活程序界面.简单易懂,傻瓜式操作.带有详细的安装 ...
- Qt中如何禁掉所有UI操作以及注意事项(处理各个widget的eventFilter这一层,但是感觉不好,为什么不使用QApplication呢)
刚做完的一个项目,在测试时出现了一个问题:由于多线程的存在,当进行语音识别时:如果用户点击程序界面上的button或者其他接受点击事件后会发出信号的widget时,程序会crash ! 后来尝试着从多 ...
- 【Windows 8 Store App】学习二:ResourceLoader
原文 http://www.cnblogs.com/java-koma/archive/2013/05/22/3093308.html 在项目开发时,通常有一些资源信息需要存储起来,比如请求的URL, ...