VS2012程序打包部署详解
C#为winform程序打包发布应用

1:新建安装部署项目打开VS,点击新建项目,选择:其他项目类型->安装与部署->安装向导(安装项目也一样),然后点击确定.(详细见下图)此主题相关图片如下:此主题相关图片如下:2:安装向导关闭后打开安装向导,点击下一步,或者直接点击完成.3:开始制作 安装向导完成后即可进入项目文件夹:双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来.然后右击你的可执行文件,创建快捷方式,然后把快捷方式分别剪切或复制到左边的"用户的?程序?菜单"和"用户桌面"中.这样安装程序安装完成后会在这样安装程序安装完成后会在"开始->所有程序"和"桌面"上生成程序的快捷方式.然后右击左边的"应用程序文件夹"打开属性对话框:将属性中的"defaultlocation"的路径中的"[manufacturer]"去掉,不然的话做好的安装程序默认安装目录会是"c:\programm file\你的用户名\安装解决方案名称";然后打开解决方案管理器,右击你的解决方案名称,选择属性:在打开的属性页中,选择"系统必备",在打开的系统必备页中,选中如下中的选择项,这个很重要选上以后,在生成的安装文件包中包含.netframework组件.(这个选项默认是没有选中的)好了,这样就完成99%了,然后点击"生成->生成解决方案",哈,生成成功!4:制作完成现在打开解决方案文件夹下的debug文件夹,就可以看到生成的安装文件了.【续】关于"卸载"功能的添加,上面的文章只介绍了简单的生成安装的方法,但是在2005下并没有直接生成卸载程序的功能,所以我们只好用msi来实现了,原理我就不讲了,网上一搜一堆,我只讲操作.【1】:在添加你的应用程序项目的时候,多添加一个msiexec.exe进去,这个文件在c:\windows\system32文件夹下.添加进去以后,为了让他更像个卸载程序,把他的名字改成"Uninstall.exe",当然这个关系不大,改不改都行的.然后给他创建一个快捷方式,放到桌面或者"开始-程序"中,我选择放在了开始菜单中,然后下面我们要的做的就是查找这个部署项目的ProductCode了,鼠标左键单击项目名称,记住是左键单击,然后点击属性标签,注意:不是右击的属性,这个区别很大,这时你就可以看到ProductCode了,然后打开你创建的那个快捷方式的属性对话框,在Aguements属性中输入"/x {ProductCode}",好了,然后点击"生成解决方案"即可生成带有卸载功能的安装程序了.。
VS2010程序打包与自定义操作(详细步骤版)

VS2010打包安装部署这里简单介绍如何在VS2010开发环境下制作安装项目,其中包括如何设置开机启动、删除注册表及安装后自动运行,加上卸载功能。
1、创建安装项目打开VS2010,点击菜单上的“文件”>>“新建”>>“项目”,弹出如下对话框。
如上图所示,在“其他项目类型”中选择“安装项目”,根据自己的需求命名,这里命名为“MySetup”,选择保存路径。
这样就创建了一个安装项目。
2、在安装项目中添加其他应用程序项目点击菜单上的“文件”>>“添加”>>“现有项目”,弹出如下对话框。
这里选择之前已经做好的一个WPF应用程序项目3、将可执行文件(.exe)、类库(.dll文件)及所需图片加入安装项目中右击“MySetup”>>“视图”>>“文件系统”,主窗口显示文件系统界面,如下图右击“应用程序文件夹”>>“添加”>>“项目输出”,弹出如下对话框。
在“项目”选项中选择“DataServiceHost”,按住“Ctrl”键,选中“主输出”,单击“确定”。
再右击“应用程序文件夹”>>“添加”>>“文件夹”,命名为“Images”,在“Images”中放入应用程序需要的图片,右击“Images”>>“添加”>>“文件”,在弹出的对话框中添加所需的图片。
4、创建快捷方式在“应用程序文件夹”中右击“主输出来自DataServiceHost(活动)”,如下图。
点击“创建主输出来自DataServiceHost(活动)的快捷方式”,将快捷方式重命名为“我的WPF应用程序”,这里可以根据需要命名。
在“文件系统”中的“用户的“程序”菜单”添加文件夹“我的WPF应用程序”,这里可以根据需求命名,将之前“我的WPF应用程序”快捷方式剪切到该文件夹中。
同理可以在“文件系统”中的“用户桌面”中创建快捷方式。
Visual Studio程序打包软件——InstallShield(2)(参考)

初次使用InstallShield的笔记公司的产品需要打包发布,以前一直没打包,打包方法的学习交给了我下面的内容是我研究过后的,通过回忆写的笔记。
由于不熟悉,可能会有错误或者是笨办法,希望高手指正,感激不尽。
有些东西是什么,以及是什么意思我也不太清楚,反正我照这么做是满足了我的需求。
需求如下项目包含主程序和数据库文件两个部分,可以选择这两个部分安装在不同的地方当文件都复制完之后将数据库文件的安装路径写进程序安装目录下的一个ini文件当中工具选择1. VS05自带的打包工具一开始选择的这个工具,不过我太菜我确实不知道怎么让这个来满足我们的需求2. InstallShield 2009 pro随后想到了专业打包工具IS,下载了较新的版本试用。
不过网上教程较少,软件功能强大,因此在慢慢摸索中。
步骤1. 开始网上说一般的打包工程选择Basic MSI Project,如果需要对界面需要进行很高的定制就需要选择InstallScript MSI Project。
由于我只需要打包,已经执行部分脚本因此我选择了Basic MSI Project。
输入Project Name,选择Location后点击OK,新建工程。
进入到下图界面,此时我们可以选择两种打包方式(红框处选择)1.Project Assistant 可以进行简单的类似向导类的配置即可进行打包工作,如果选择这种方式,Visual Studio自带的工具也能轻松实现2.Installation Designer 完全自由化的配置,自我定制程度最高。
根据需求情况,我自然选择第二种方式2.配置点选Installation Designer,进入如下界面红框处就是需要选择配置的区域了。
2.1 General Information在Installation Information中选择General Information,在这里配置软件的基本信息红线处你可以写上你的大名,你是这个Project的作者下面的Setup Langueages可以选择安装语言,我这里只考虑了简体中文,故未更改设置。
vs2010打包winform程序详解

最近一直在做winform程序,做完后程序打包很头疼,第三方打包工具,好用的花钱,不花钱的不好用,最后只能用vs自带的打包工具了!打包过程vs2010(包含卸载功能):1、添加安装和部署。
首先打开一个要进行打包的项目的设计界面,然后点击vs上的“文件”→“添加”→“新建项目”→“已安装的模板”→“其他项目类型”→“安装和部署”→“Visual Studio Installer”→“安装项目”。
然后为安装项目起一个名称,再选择一个安装位置,如图:最后点击确定。
如图:2、配置应用程序文件夹选中应用程序文件夹,在右边空白位置右键“添加”→“项目输出”→“主输出”,如图:最后点击“确定”,如图:如果程序中用到了外部的文件,那么可以继续操作:右键“添加”→“文件”,选择要添加的文件,如图:现在应用程序文件夹部分就处理完了。
3、创建快捷方式快键方式可以创建两个:“开始”菜单一个,桌面一个1)、创建“开始”菜单中的快捷方式:点击中的‘用户的“程序”菜单’,在右面空白处右键“添加”→“创建新的快捷方式”,然后选择“应用程序文件夹”下的程序的exe文件,如图:然后给快捷方式起名,再设置快捷图标,右键新创建的快捷方式的名称,打开“属性窗口”,通过Icon属性设置快捷方式的图标,如图:2)、创建桌面的快捷方式图标:过程同创建“开始”菜单中的快捷方式一样4、更改默认安装目录:右键“应用程序文件夹”→“属性窗口”里的“DefaultLocation”属性可以更改默认的安装目录,改前:改后:5、打包时,如果需要把对应的.NET Framework 打到安装包中,此时促进行如下操作:右键安装项目名→“属性”→“系统必备”,勾选对应的系统必备组件然后指定系统必备组件的安装位置,注:如果选“从组件供应商的网站上下载系统必备组件”(安装客户端时,pc机需联网)如果选“从我的应用程序相同的位置下载系统必备组件”,那么打包时将会从程序中把组件打进去(安装客户端时,pc机无需联网——推荐)6、添加卸载功能在应用程序文件夹右边空白处,右键->添加->文件,选择c:\windows\system32文件夹下的msiexec.exe文件。
Visual Studio程序打包生成安装包 (全过程图示)

VS程序打包生成安装包(全过程图示)转自网络,重新整理一、在这里用一个已有的自己写的小程序“MyExplorer”来进行测试,此程序里用了一些动态链接库DLL文件和Access数据库。
二、在Solution ‘MyExplorer’(解决方案)上“右击”——“添加”——“新建项目”,选择“其他类型项目”——“安装和部署”——“安装项目”,并命名为“MyExplorerSetup”,如下图所示:确定后显示如下图所示:三、添加项目需要文件(包括显示在开始菜单中和桌面上快捷方式的图标、卸载程序文件)1、在右边的“应用程序文件夹”上右击“添加”——“项目输出”,选择MyExplorer项目点击之后它会把你所用到的动态链接库一起导入进来,如下图所示:但是这时候并没有把数据库也导入,需要自己手动“右击”——“添加”——“文件”,如下图所示:如果你的工程不只一个,也需要用同样的方法把其他同一个解决方案下的工程生成的动态链接库导入进来。
2、添加卸载,在右边的“应用程序文件夹”上右击“添加”——“文件”,选择“c:\\ windows\\system32\\msiexec.exe”文件。
3、在右边的“用户的”程序”菜单”上右击“添加”——“文件”,然后选择一个*.ico的图标文件4、在右边的“用户桌面”上右击“添加”——“文件”,然后选择一个适合在桌面上显示的图标你也可以把你自己的Icon图片在“应用程序文件夹”下建立一个小的文件夹集体放图片四、创建快捷方式1、开始菜单快捷方式:在“主输出来自MyExplorer(活动)”上右击“创建”主输出来自MyExplorer(活动)”的快捷方式”,命名为startMyExplorer,并在其的属性栏中为其“Icon”选择刚才导入的图标。
并将其拖动到“用户的”程序”菜单”文件下。
2、桌面快捷方式:步骤同1。
将其拖动到“用户桌面”下3、卸载快捷方式:在msiexec.exe上右击“创建msiexec.exe 的快捷方式”,并命名为“卸载MyExplorer”。
vs2012 打包应用程序(创建部署安装包)

vs2012 打包应用程序(创建部署/安装包)
新建这么一个项目,点OK,如果是第一次使用的话,会打开一个网页,按照提示的步骤来做,
点击上面的step2的网址,进入到另一个网页:
填写完右边的信息,点击“download now”即会收到一封邮件,里面有下载地址和激活码。
点击上面的连接进行下载,会下载到一个名为:InstallShield2012SPRLimitedEdition.exe的安装包,用管理员权限运行安装完后。
重新启动VS2012。
重新新建一个这样的项目:
点OK,这时候不再是打开网页,这时打开会提示激活或者是试用
选第一项,下一步
输入收到的邮件里的激活码,激活
激活完成,进入到部署界面
对于如何部署,还有个视频教程。
vs打包程序数据库图解

VS打包数据库图解1.首先在需要部署的项目的解决方案资源管理器中新建一个安装项目2.在安装项目的文件视图中,右键【应用程序文件夹】->【添加】->【项目输出】选择你的项目中的启动项目,下面的列表中,默认就是主输出,确定。
3.此时在文件系统的中间栏目,会自动列出编译所需的文件。
一个简单项目打包差不多,还有快捷方式什么的,就不说了。
开始重点了。
创建安装程序类4.在解决方案资源管理器中,新建一个类库项目【InstallDB】,删除Class1.cs,新建一个安装程序类[InstallDB.cs],等下将在这个类中编写附加数据库代码。
创建自定义安装对话框5.在刚新建的安装项目上右键,【视图】->【用户界面】:在用户界面中,右键【启动】-【添加对话框】-选择【文本框(A)】-确定。
6.然后右键这个文本框(A),将其上移到欢迎使用下面:右键选择【属性】,参考下图的信息填写:7.在刚新建的安装项目上右键,【视图】->【自定义操作】:8.右键【自定义操作界面】的【安装】节点,【添加自定义操作】,弹出的对话框。
9.在查找范围里选择应用程序文件夹,再点击右侧的【添加输出(O)…】,选择刚新建的安装程序类项目,默认还是主输出,确定。
此时:10.右键这个【主输出来自InstallDB(活动)】,进入属性界面,在【CustomActionData】属性里输入下面的内容:/dbname=[DBNAME] /server=[SERVER] /user=[USER] /pwd=[PWD]/targetdir="[TARGETDIR]\"说明:其中前四个方括号中的大写字母,为上面第6步图中输入的四个EditProPerty属性,需要对应好。
最后一个targetdir的值的意思是安装后文件的目录路径。
特别提醒:前三个"/XXX=[XXX]"后面,都有一个空格的,小xin曾因此烦恼甚久,网上的某些教程实在是。
VBnet程序打包发布(图文版)

程序打包发布
一、用Visual Studio 2010打开已经写好的程序(例如我打开的项目为“串口调
试CY1.0.0”)
二、文件——添加——新建项目
三、其他项目类型——安装和部署——Visual Studio Installer,可以更改名称和保存地
址,选择“安装向导”——“确定”
点击“下一步”
点击“下一步”
“确定”
然后出现下面窗口:
点击“添加”,添加你编写的程序所用到的一些文件,这些文件是VS2010以外的文件。
点击“完成”
出现下面窗口,以此项目为例,此项目名称为“串口调试”
创建快捷方式
将快捷方式剪切到“用户桌面”下
在快捷方式属性中添加“ICON ”属性,即添加图标
右击项目名称“串口调试”,单击“属性”
选择“从与我的应用程序相同的位置下载系统必备组件”,然后点击“确定”
最后点击“生成”——“生成串口调试(U)”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VS2012程序打包部署详解
上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结。
程序编写测试完成后接下来我们要做的是打包部署程序,但 VS2012让人心痛的是没有了打包工具。
不知道出于什么原因微软没有将打包工具集成在开发环境中,但是我知道总会有解决办法的。
经过翻阅资料发现,VS2012虽然没有集成打包工具,但它为我们提供了下载的端口,需要我们手动安装一个插件InstallShield。
网上有很多第三方的打包工具,但为什么偏要使用微软提供的呢?因为最原始的也是最高级的,万变不离其宗。
一、.NET程序部署机制
上篇博客稍微总结了下.NET程序的编译机制,下面了解些有关程序部署的一些机制。
在.NET程序包下有三个文件夹分别是bin文件、obj 文件、My Project文件,他们分别封存着程序的组成部分。
bin目录用来存放程序的编译结果,它有Debug和Release两个版本,分别对应的文件夹为bin/Debug和bin/Release,这个文件夹是默认的输出路径,在编译后生成的程序文件会存放在该目录下。
当然我们也可以手动修改程序的输出路径,修改方法:项目属性—>配置属性—>输出路径来修改。
obj目录是用来保存每个模块的编译结果,用来放置程序生成时的
中间文件。
程序不会直接生成出可用的文件,而是由源程序生成中间文件,再编译中间文件生成可执行文件的。
在.NET中,编译是分模块进行的,编译整个完成后会合并为一个.DLL或.EXE保存到bin目录下。
因为每次编译时默认都是采用增量编译,即只重新编译改变了的模块,obj保存每个模块的编译结果,用来加快编译速度。
是否采用增量编译,可以通过:项目属性—>配置属性—>高级—>增量编译来设置。
My Project目录定义你程序集的属性,被称为项目属性文件夹。
目录下的AssemblyInfo类文件,用于保存程序集的信息,如名称,版本等,这些信息一般与项目属性面板中的数据对应,不需要手动编写。
在程序编译生成后,程序的源文件就不在重要了,重要的是DLL、EXE、Config等的程序的组件,有了程序的组件程序就能够正常运行。
所以在发布制作安装程序时我们只需要将程序的组件打包即可。
二、InstallShield程序打包图解
VS2012中打包工具被看做程序集,在使用时和程序集一样被创建到程序解决方案下。
需要我们做的是添加项目即可。
但是对于初次使用的朋友来说,我们需要根据提示一步步的先下载安装该打包工具。
具体的安装方法不再详述,网上资料很多。
1、设置安装程序集
InstallShield安装完成后,执行以下步骤右键解决方案-->添加-->新建项目-->其他项目类型-->安装和部署,具体操作如下图:
2、发布程序
在继续往下操作前一定要选择发布,在启动项目的属性内设置发布文件夹默认路径设置为安装系统的文件夹。
3、设置程序安装信息
Application Information主要设置程序在安装时显示的有关程序的一些信息,如:程序的开发者、程序开发公司,程序安装图标和程序简介等。
4、添加程序文件
在下图中的第四步中添加程序文件时会有主输出、源文件等多个选项框,其实它的生成机制和.NET程序的编译机制是相同的。
下图中的第五部显示出的UI.主输出,在生成安装文件后程序包中包含了与UI层进行交互引用的其它层的引用文件,但不会生成和UI层(启动层)没有相连的组件,我们只能通过手动添加。
5、添加程序的资源文件
程序源文件是程序运行的资源文件,也包含了程序的源码文件。
如果不需要打包源文件的话,这步可以省略。
6、设置安装注册文件
如果开发的程序中使用了第三方控件,这时在安装时往往需要注册到目标系统中,同样Install也为用户提供了此功能。
Install 能够通过设置dll文件或OCX文件的注册,首先要添加注册的文件,然后通过设置文件的安装属性来指定注册与否,设置如下图。
7、设计程序的打开方式
Application Shortcuts 程序快捷打开方式,Install为用户提供了两种显示形式,分别是Win菜单和桌面。
下图显示了设置的一些注意
项,此阶段也可以设置程序的显示图标。
8、设置程序安装注册表项
一般的应用程序在安装时不需要考虑程序的注册表项,此步骤可以不用设置。
9、设置程序安装时的安装视图
根据自己的需要进行设计即可。
10、打包环境
设置完上面的步骤后,我们的打包程序基本设置完成,但是在一些情况下我们往往要打包.net环境或者其它程序运行所需要的Windows环境,Install也为我们很好的设计了环境的打包。
在选择需要打包的环境时一定要注意文件的名称,一般往往是需要直接将环境安装包放到安装exe中这时我们要选择名称为Client的文件,如我想要将.NET Framework 4.0的完成安装包集成到exe中,这时我要选中Microsoft .NET Framework 4.0 Clinet然后等待Vs将该环境的安装包下载到程序集文件夹中即可。
另外一定要注意名称后面的(Web
Download)括号的内容说明文件只是一个链接,在安装时需要网络下载才可以实现完成安装。
11、发布程序
上面的安装步骤执行完成后即可生成解决方案,但是生成的文件会放在DVD-5文件夹内,想要使用安装文件的话就必须拷贝整个文件夹否则安装会出错,这样内容很繁琐,而且给客户的安装体验度也很差,那应该有其它的解决办法吧,是的,如下图所示,我们将使用SingleImage的安装包,将所有文件集成到一个Setup.exe中,再次安装的时候只需要一个 Setup.exe即可。
如果我们的安装文件内没有打包程序运行环境那上面的操作步骤就完全可以满足只需要一个Setup.exe即可的要求了,但如果需要将安装环境打包到Setup.exe中的话还必须要经过下图的步骤。
好了设置完成后,接下来就是生成解决方案了或者是只生成单个程序集,这时候安装文件就只有一个setup.exe了,如下图。
操作完上述步骤后,程序打包基本设置已经完成,接下来要做的就是生成解决方案。
生成解决方案后会在安装程序集下面生成一个名为Setup的文件夹,安装文件就保存在下面的目录中。
Install在生成安装文件后会有Setup.exe和.msi两中安装文件,exe文件是安装的引导
文件,核心文件是msi文件,里面封存了程序的组件。
在里面找到Setup.exe文件及msi文件即可进行安装。
最后还要强调一点,Install打包工具中并没有继承中文环境,在它的底层语言库中没有中文语言,所以解决方案、程序集名称等涉及到与主输出相关的文件最好不要以中文名命名,否则会出现如下的错误:“ -7184: The FileName column of the File table includes characters that are not available on code page 1252”,该错误是在说明在代码段1252处没有发现和文件名相关的语言库。
万变不离其宗,微软的Install程序打包工具虽然使用时较繁琐,但原始的就是最高级的,其它的打包工具和它相比也差不到哪儿去。