转自:http://blog.csdn.net/weixin_29796711/article/details/72822052

用户在使用我们用windriver开发的硬件驱动时,需要先安装windriver的必备文件还有硬件的驱动,过程比较麻烦,为方便用户,可以将它们打包成一个安装程序,让用户一键安装即可。

下面将简单分享使用InstallShield打包安装程序(InstallShield版本为2010),关于InstallShield的教程网上资源很多,本文将不做具体介绍,文章最后会附上本人认为比较实用的两个教程。

一、制作安装包的步骤

Step 1:新建InstallShield工程

打开InstallShield,新建一个InstallScript MSI Project。

Basic MSI Projecet 不方便修改安装界面,InstallScript Project比较难用,很多都要自己写。对于我这种InstallShield初学者,我感觉InstallScript MSI Project比较适合自己。

Step 2: 打包必备文件(Windriver必备文件、硬件驱动文件、VC运行库)

在Installation Designer中,点击Setup Design,新建一个Feature->新建Component->设置component属性->将文件拉入Commponent的Files中

设置component属性:

添加windriver必备文件、硬件驱动文件:

添加VC 运行库:

Step 3 :安装文件、添加卸载快捷方式

在InstallScript添加Moved函数,在Moved函数中进行安装操作,参考我之前写的windriver pci驱动发布文章对文件进行安装,如下图所示

Step 4 :卸载

在InstallScript添加OnMaintUIBefore函数,在OnMaintUIBefore函数中进行卸载操作,参考我之前写的windriver pci驱动发布文章对文件进行卸载,如下图所示

Step 5 :修改安装界面

在InstallScript添加OnFirstUIBefore函数,在OnFirstUIBefore可以修改安装界面,具体自己根据需求修改

Step 5 :生成安装程序

点击Project Assistant->选择Build Installation->选择Single Executable(安装包比较小,生成.exe即可)->Build

生成后可在项目文件夹中找到Setup.exe(名字可改)

二、注意事项

1.制作64位安装包时要注意64位系统在运行32位程序时会把指定拷贝到system32的文件自动改为拷贝到SysWoW64下。

2.32位和64位系统对应的windriver必备文件不一样。分别安装32位和64位的windirver软件提取必备文件即可。

3.数字证书(申请比较麻烦,而且需要收费),如果没有数字安全证书,安装时会提醒Windows无法验证驱动软件的发布者,选择始终安装此驱动程序软件即可

三、两个参考教程

http://download.csdn.net/detail/weixin_29796711/9856608

http://download.csdn.net/detail/weixin_29796711/9856611

使用InstallShield打包windriver驱动-转的更多相关文章

  1. InstallShield打包设置相对路径

    InstallShield打包设置相对路径 在使用Installshield 打包安装文件时,添加打包文件时默认使用绝对路径,但是工程文件转移时(复制到其它位置时)编译时就会找不到安装文件,这样很不方 ...

  2. 用InstallShield 打包工具 打 Win32 程序 (depends.exe 用看程序都依赖了哪些dll)

    InstallShield 打包工具 1. 转载:http://blog.csdn.net/zhang_xinxiu/article/details/9099757 2. 转载:http://www. ...

  3. InstallShield打包,以及集成TFS、JenKins

    一. InstallShield打包脚本教程,这里面写的很详细了 [海洋女神原创]一个完整的Installshield安装程序实例—艾泽拉斯之海洋女神出品(一)---基本设置一 需要补充的是Insta ...

  4. 使用InstallShield打包VS程序

    使用InstallShield打包VS程序 InstallShield是微软自己的一个打包工具,这个打包工具,有其优势也有其弊端.其优势,可以很好且方便地将.NET平台的控件以及程序所需要的dll打包 ...

  5. 怎样用QT在windows环境通过编程卸载installShield打包的程序

    通常情况下,如果是一个完备的软件,我们可以通过启动软件的uninstaller.exe之类的程序来完成卸载.但是使用installShield打包的程序,本身可能并不含有这类卸载程序.此时,我们可以通 ...

  6. Installshield 打包安装包心得

     制作简单的安装软件 声明:下面的教程,是把读者当做完全没接触过IS的角度来制作的. 1. 启动InstallShield 12.建立一个InstallShield MSI Project,如图: 2 ...

  7. InstallShield打包

    使用2010部分汉化版(2010之后找不到更新的破解版本),主要用于打包桌面应用程序. 主要步骤: 1.3种主要的工程类型: Basic MSI,安装脚本不易使用. InstallScript,无法加 ...

  8. 更换用installshield打包生成exe文件的图标【转】

    最近在研究用installshield2010为自己做的产品打包,自己在网上找写资料,胡乱折腾,最后弄成了一个exe安装包,想要修改exe文件的图标,发现Basic MSI project 无法用in ...

  9. 用.net installshield打包程序时注册第三方控件

    制作打包程序时如果用到外部控件需要按以下方式操作: 1.将控件及控件所用到的所有DLL加入打包程序. 2.将控件的Register由vsdrfDoNotRegister改为vsdrfCOMSelfRe ...

随机推荐

  1. Spring sprint @ ninth day

    时间 日期 地点 工作 20:05 5.20 九实 集成网络助手项目 遇到的困难:集成遇到,画了好久的rc文件,编译不了.rc文件也不能复制,还得重画.郁闷!!!

  2. 『编程题全队』Alpha阶段事后诸葛亮分析

    一.设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? Answer: (1)我们软件主要解决个人和团队的事务管理问题 (2)我们软件的定义明确和清楚 ...

  3. 【Leetcode】378. Kth Smallest Element in a Sorted Matrix

    Question: Given a n x n matrix where each of the rows and columns are sorted in ascending order, fin ...

  4. Linux命令(三) 移动文件 mv

    用户可以使用 mv 命令来移动文件或目录至另一个文件或目录, 还可以将目录或文件重命名. 如果将一个文件移动到一个已经存在的目标文件中,目标文件的内容将会被覆盖.mv 命令接收两个参数时,第一个参数表 ...

  5. 关于链表的总结(C++循环实现)

    0.目录 1.链表的基本操作 1.1 结点定义 1.2 创建链表 1.3 销毁链表 1.4 打印链表 1.5 获取链表长度 2.结点的基本操作 2.1 删除结点 2.2 查找结点 3.面试题 3.1 ...

  6. 【BZOJ1488】[HNOI2009]图的同构(Burside引理,Polya定理)

    [BZOJ1488][HNOI2009]图的同构(Burside引理,Polya定理) 题面 BZOJ 洛谷 题解 求本质不同的方案数,很明显就是群论这套理论了. 置换一共有\(n!\)个,考虑如何对 ...

  7. QWidget窗体中使用Q_OBJECT后无法添加背景图片或背景色

    在继承自QWiget的窗体中,设置背景图片或背景色比较简单的方法是使用setStyleSheet()函数,比如在构造函数中可以这样来设置背景图片: this->setStyleSheet(&qu ...

  8. Linux上shell脚本date的用法

    在shell脚本里date命令的用法: %% 一个文字的 % %a 当前locale 的星期名缩写(例如: 日,代表星期日) %A 当前locale 的星期名全称 (如:星期日) %b 当前local ...

  9. gulpfile.js不断更新中...

    Gulp压缩合并js/css文件,压缩图片,以及热更新教程 var gulp = require('gulp');var concat = require('gulp-concat');//- 多个文 ...

  10. JAVA (字符串学习)

    String类 String类是不可改变的,所以你一旦创建了String对象,那它的值就无法改变了. 如果需要对字符串做很多修改,那么应该选择使用StringBuffer&StringBuil ...