摘要

Setup Factory是一款软件安装工具。Setup Factory支持创建一个安装文件或一个单间的setup.exe文件,生成文件可以运行于任意版本的windows中。

步骤

1、安装Setup Factory工具。采用默认安装即可。

2、打开Setup Factory进行打包程序。填写软件信息。

包括:公司名,软件名,软件版本号,公司官网地址。

3、设置软件是x86的还是x64版本。

4、选择要打包的程序所在目录

5、窗口设置,为安装软件提供窗口设置信息,这里采用下面的方式

6、“主题”窗口中,提供了主题下拉列表,每选择一种即出现预览效果界面。根据自己的喜好,选择一种。

7、多语言设置,一般勾选简体中文 “Chinese(Simplified)*”与“繁体中文Chinese(Traditional)”。勾选后在下拉框中选择一种语言作为默认语言,选择简体中文作为默认语言。

8、“从属”窗口中选择的技术是安装软件需要依赖的组件,由于要打包的程序是使用.net 4.5开发,选择.net4 就可以了。

注意:如果安装该软件的电脑没有.net4.0改怎么办,这里就需要在打包的时候讲.net framework4.0也打包到你的软件中。具体做法可以采用下面的方式,

在SetUpFactory软件所在的目录中新建一下目录:

Dependencies\dotnet4 。并且将 dotNetFx40_Full_x86_x64.exe放在其中。

9、安装环境配置,包括卸载功能、记录日志功能、权限限制、软件安装的操作系统等选择功能。默认全选上。

10,单击完成,如图,在窗口中列出要打包的软件所需的所有文件。

11、设置主程序文件。

通过筛选功能,找到exe可执行文件。

12.设置exe属性

双击exe文件或者右键属性。选择如果存在则询问用户是否进行覆盖安装。

13、程序“”快捷方式“”设置

14、因为测试项目比较简单,其它的设置不再赘述,可以参考下面的文章

http://www.cnblogs.com/iiwen/p/5310246.html

15、打包

设置安装文件大小:这个大小最好大于你的程序的大小+dotNetFx40_Full_x86_x64.exe的大小

设置程序发布后安装包路径以及安装程序名称。

错误:

Error 2090: Dependency file not found: C:\Program Files (x86)\Setup Factory 9 Trial\Dependencies\dotnet4\dotNetFx40_Full_x86_x64.exe

需要将.net framework放在Setup Factory 安装目录下。

下载dotNetFx40_Full_x86_x64.exe,大小48.1M。将该文件放在以上的目录下,重新打包。

打包完成

从上面的日志可以看出生成了三个文件mmClock.exe,mmClock.2,mmClock.3,这个就是在打包开始设置安装文件大小过小造成资源文件没有打包进exe安装程序,所以建议:

大于你的程序的大小+dotNetFx40_Full_x86_x64.exe的大小

后果:

如果出现多个文件,则再安装过程解压资源文件出现解压失败。

安装完成

总结

这里的测试项目比较简单,如果项目比较复杂,也可以自己写一些脚本,比如判断电脑是否有.net framework,如果没有跳转到一个地址进行下载等逻辑。

Setup Factory打包winform程序的更多相关文章

  1. 使用Inno SetUp脚本打包Winform程序

    在开发桌面程序时,往往需要用到打包工具将程序打包为exe可执行文件. 之前在项目中用了下 InstallShield Limited Edition for Visual Studio  2015,它 ...

  2. vs2010打包winform程序详解

    vs2010打包winform程序详解   最近一直在做winform程序,做完后程序打包很头疼,第三方打包工具,好用的花钱,不花钱的不好用,最后只能用vs自带的打包工具了! 打包过程vs2010(包 ...

  3. 使用VS2015打包winform程序安装包简单方法(不需要InstallShield)

    转载自:   DGPLM博客 使用VS2015打包winform程序安装包简单方法(不需要InstallShield)

  4. 本人亲测-Setup Factory打包教程(整理并优化)

    Setup Factory 9 总结 一:安装完毕立刻启动 result = Shell.Execute(SessionVar.Expand("%AppFolder%\\消息助手.exe&q ...

  5. setup factory 打包VB 工程

    setup factory 使用起来很简单你可以如下:1.你把你刚编译出来的exe和相关的资源文件复制到某一空目录下.把exe文件添加到setup factory里之后,在列表里右键,属性里面可以设置 ...

  6. 使用Setup factory打包WPF

    软件环境 Win10 .NET452 WPF Setup Factory 工具直接百度下啦,关键词:Setup Factory 95 With Sn 打包过程主要参考了以下文章: https://ww ...

  7. Setup Factory 打包.netframework 2.0

    在setup factory 的安装目录下的Dependencies中新建目录dotnet20/并放入dotnetfx2.0.exe: Dependencies目录中再加xml文件dotnet20.x ...

  8. InnoSetup 打包Winform程序

    在VS2012之前,我们做安装包一般都是使用VS自带的安装包制作工具来创建安装包的,VS2012.VS2013以后,微软把这个去掉,集成使用了InstallShield进行安装包的制作了,虽然思路差不 ...

  9. vs2015打包winform程序遇到的一系列问题

    1.因为打包的时候用的是release版本的东西,所以就先把项目按release编译一下,然后一大波bug,后来修改了生成目标平台为x86,我的解决方案里面加上安装部署项目共5个(ui配置:活动rel ...

随机推荐

  1. android解决AVD中文路径无法启动问题

    在as中新建一个AVD,然而启动时却报错,总之是不能找到中文路径 然后这个虚拟设备被默认安装在了C盘我的用户李敏啊,而我用户名是中文名导致无法识别 解决办法,使用链接文件格式修改虚拟设备配置路径, 比 ...

  2. windows 下的一些常用命令提示符

    windows下dos命令窗口输入 netstat -ano即可查看端口使用情况, 如果要查看指定端口是否被占用 使用命令netstat -ano|findstr 端口号, 例如要查看8080端口号是 ...

  3. Postman接口&压力测试

    Postman接口与压力测试实例 Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件.它提供功能强大的 Web API & HTTP 请求调试. 1.环境变量和全局 ...

  4. MySQL学习笔记:Engine存储引擎

    在使用Mysql建表过程中,有时候会遇到一些奇怪的现象.例如,如何插入数据就是查询不到数据,此时可能是建表的存储引擎设置成为engine=blackhole的原因. 1.engine=innodb 提 ...

  5. Java测试框架Mockito源码分析

    1.Mockito简介 测试驱动的开发(Test Driven Design, TDD)要求我们先写单元测试,再写实现代码.在写单元测试的过程中,一个很普遍的问题是,要测试的类会有很多依赖,这些依赖的 ...

  6. BFS && DFS

    HDOJ 1312 Red and Black http://acm.hdu.edu.cn/showproblem.php?pid=1312 很裸的dfs,在dfs里面写上ans++,能到几个点就调了 ...

  7. 动态页面技术JSP/EL/JSTL

    本节内容: jsp脚本和注释 jsp运行原理 jsp指令(3个) jsp内置/隐式对象(9个) jsp标签(动作) EL技术 JSTL技术 JavaEE的开发模式 动态页面技术:就是在html中嵌入j ...

  8. Thymeleaf(Java模板引擎)

    一.概念 1.Thymeleaf是Web和独立环境的开源的Java模板引擎,能够处理HTML,XML,JavaScript,CSS甚至纯文本:2.Thymeleaf可以在Web(基于Servlet)和 ...

  9. Bootstrap进阶二:基本组件

    基本组件是Bootstrap的精华之一,其中都是开发者平时需要用到的交互组件.例如:网站导航.标签页.工具条.面包屑.分页栏.提示标签.产品展示.提示信息块和进度条等.这些组件都配有jQuery插件, ...

  10. numpy.base_repr 方法解释

    首先看官方文档: numpy.base_repr(number, base=2, padding=0) 将给定的 number 值,换算成给定的 base 进制(默认 2 进制)的值,以字符串的形式返 ...