DotNet4应用程序打包工具(把DotNet4安装程序打包进你的应用程序;WINAPI开发,无dotNet环境也可顺利执行)【一】整体思路
2011-12-12 02:27
691 查看
先说废话
很多朋友对我写的这个系列的第五篇比较感兴趣:/article/4750949.html
因为我承诺第五篇就公布源码了,但是与第五篇相关的代码我还没有完成,
现在又花了一个周末的时间来写这篇文章
原谅我吧~
(如果你觉得这篇文章更有吸引力的话~那另当别论)
索引:
DotNet4应用程序打包工具->升级版【三】宿主程序分析+全部源码下载
DotNet4应用程序打包工具->升级版【二】安装工具分析
DotNet4应用程序打包工具(把DotNet4安装程序打包进你的应用程序;WINAPI开发,无dotNet环境也可顺利执行)【一】整体思路
好了~言归正传!
先来张图片!
以升级为如下:
1:缘起
在09年的时候为了解决斯克迪亚的问题
写了这个工具的简易版:/article/4751845.html
那篇文章写的实在是太简易了~
主要是因为.NET 3.5的包太大,打包到应用程序中去,太怪!所以就没有深入做这个工作
最近小洋(燕洋天)又提到这个问题~
考虑到现在.Net 4 x86只有二十几兆;(x86andx64才四十几兆)
如果能打包到应用程序中去,就美多了
于是写了这个工具。
2:分析
别看这个工具小(只有三个按钮一个文本框)
其实他里面包含了三个程序
第一个就是你看到的这个图片所展示的应用程序
我们叫他“打包工具”
第二个和第三个程序是作为资源放在“打包工具”里的
第二个程序是dotNet4的安装包
第三个程序负责判断客户端是否有dotNet环境
我们叫他“宿主程序”
下面我们就分别说说这三个程序的逻辑:
2.1打包工具
选择好您的应用程序(我们叫他“目标程序”)
点开始打包后
“打包工具”先把“宿主程序”释放到“目标程序”的相同的目录下
然后得到“目标程序”的图标ICON资源
然后把“宿主程序”的图表ICON资源替换掉
然后把整个“目标程序”当作资源添加到“宿主程序”中
然后“打包工具”把自身的dotNet安装包资源也添加到“宿主程序”中
至此打包成功
2.2宿主程序
宿主程序的逻辑稍微多一些
在打包成功,把打包后的“宿主程序”分发到客户电脑上之后
客户打开宿主程序
先检查注册表,看客户环境是否安装了dotNet4应用程序
如果没有安装
释放dotNet安装包资源(打包时加入进去的)
执行dotNet安装包程序,等待安装进程执行完成
安装完成后,再次检查注册表
如果顺利通过检查
就释放目标程序
然后执行目标程序
等待目标程序进程执行完成
执行完成后,删除释放的dotNet应用程序和目标程序
然后“宿主程序”退出
3:后记
3.1为什么不静默安装dotNet4
虽然可以做到的
但是
第一dotNet4安装过程中可能会有很多情况发生
要处理很多逻辑,做起来太复杂,
比如:阻滞的问题:http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=1385
(如果您愿意赞助我,我会考虑做这个工作,嘿嘿)
第二客户端环境会报毒
3.2为什么在目标程序执行完成后要删除目标程序
我假定您打包的“目标程序”就是一个安装包
而且这个安装包的扩展名是.exe
一个安装包程序
基本的功能应该有安装、卸载、创建桌面图表等等
所以我执行了一次您的安装包~
以后的事情就让您自己做吧~
3.3我会公布源码的
虽然我对C和winapi都是一知半解
但我愿意公布源码~
在接下去的这个系列的几篇文章中会陆续公布源码
3.4程序可能会有问题
我是在WIN2008的机器上开发的这个程序
在WIN2003的机器上测试了这个程序
开发和测试都是64位环境
现在也深夜了~没有人帮我测试~
如果有问题,我会尽快搞定的~
3.5先发布编译版本
由于已经把DotNet4安装包编译到程序里面去了比较大~
就没有传到博客园服务器上来
如果您对这个程序感兴趣
请点击推荐后在评论里留下您的邮箱
我会在今天晚上六点之后统一发邮件给大家
注意:截至时间是2011年12月12号晚六点整~
这个时间点之后填写的邮箱我就不再发送了~
见谅
请大家统一把邮箱中的@符号替换成#号(避免邮箱地址被采集)
相关文章推荐
- IOS学习笔记(一)之安装开发环境与工具与第一个IOS应用程序
- DotNet4应用程序打包工具->升级版【二】安装工具分析
- 【java】java程序打包工具fatjar在eclipse环境下的安装和使用
- 打包可执行程序,检查安装环境
- java基础--JDK安装、环境变量配置、工具开发第一个程序、数据类型、运算符
- 关于IDEA的基本环境配置以及快速使用(git拉载程序,Jdk安装,tomcat部署,应用程序打包运行)
- DotNet4应用程序打包工具->升级版【三】宿主程序分析+全部源码下载
- Java程序导出成.jar文件、生成.exe可执行文件及打包成可执行安装程序(可在无Java环境的计算机上运行)--以个人所得税计算器为例
- s3c2410上搭建QT/Embedded4.8.5开发环境(五)--程序安装后的打包,以及环境变量的设置
- 关于.net制作安装程序时在应用程序安装完成之后,又接着执行第三方应用程序的安装怎么做的一点思路
- IOS学习笔记(一)之安装开发环境与工具与第一个IOS应用程序
- gtk/glade程序开发——gtk/glade环境的安装编译与测试
- 微信小程序开发工具 下载,安装,创建新项目和如何导入项目整个过程教程
- 软件打包工具NSIS安装程序制作系统
- [转:]用eVC4开发SmartPhone、Pocket PC程序之 -- 开发工具下载、安装、配置
- WIN7上搭建Windows Phone 8 开发环境——VMware Workstation下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法
- Java语言实验机器与环境及JDK开发工具简介及Java程序开发步骤
- Java开发工具安装环境配置大全
- phpRE 自定义 PHP 运行开发环境安装程序
- 手把手教你用C#打包应用程序(安装程序)【卸载模块已添加】