C#程序打包与部署
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C#程序打包与部署,包括处理安装向导中用户输入的参数,创建卸载程序。
2010-05-1922:50501人阅读评论(2)收藏举报
一).创建部署项目
1.在“文件”菜单上指向“添加项目”,然后选择“新建项目”。
2.在“添加新项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格中的“安装项目”。在“名称”框中键入setup1。
3.单击“确定”关闭对话框。
4.项目被添加到解决方案资源管理器中,并且文件系统编辑器打开。
5.在“属性”窗口中,选择ProductName属性,并键入信息管理系统。
二).将主程序项目的输出添加到部署项目中
1.在“文件系统编辑器”中,选择“应用程序文件夹”。在“操作”菜单上,指向“添加”,然后选择“项目输出”。
2.在“添加项目输出组”对话框中,选择“项目”下拉列表中的“你的程序”。
3.单击“确定”关闭对话框。
4.从列表中选择“主输出”和“内容文件”组,然后单击“确定”。
三).创建安装程序类
1.在“文件”菜单上指向“新建”,然后选择“项目”。
2.在“新建项目”对话框中,选择“项目类型”窗格中的“C#项目”,然后选择“模板”窗格中的“类库”。在“名称”框中键入installDB。
3.单击“打开”关闭对话框。
4.从“项目”菜单中选择“添加新项”。
5.在“添加新项”对话框中选择“安装程序类”。在“名称”框中键入installDB。
6.单击“确定”关闭对话框。
7.详细代码附后。
四).创建自定义安装对话框
1.在解决方案资源管理器中选择“setup1”项目。在“视图”菜单上指向“编辑器”,然后选择“用户界面”。
2.在用户界面编辑器中,选择“安装”下的“启动”节点。在“操作”菜单上,选择“添加对话框”。
3.在“添加对话框”对话框中,选择“许可协议”对话框,然后单击“确定”关闭对话框。
4.在“添加对话框”对话框中,选择“文本框(A)”对话框,然后单击“确定”关闭对话框。
5.在“操作”菜单上,选择“上移”。重复此步骤,直到“文本框(A)”对话框位于“安装文件夹”节点之上。
6.在“属性”窗口中,选择BannerText属性并键入:安装数据库.
7.选择BodyText属性并键入:安装程序将在目标机器上安装数据库
8.选择Edit1Label属性并键入:服务器名:
9.选择Edit1Property属性并键入server
10.选择Edit1Value属性并键入:(local)
11.选择Edit2Label属性并键入:服务器名:
12.选择Edit2Property属性并键入UID
13.选择Edit2Value属性并键入:sa
14.选择Edit3Label属性并键入:密码:
15.选择Edit3Value属性并键入:
16.选择Edit3Property属性并键入PWD
17.选择Edit4Value属性并键入:数据库名字:
18.选择Edit4Property属性并键入DBNAME
19.选择Edit2Visible、Edit3Visible Edit4Visible属性,并将它们设置为true
五).创建自定义操作
1.在解决方案资源管理器中选择“setup1”项目。在“视图”菜单上指向“编辑器”,然后选择“自定义操作”。
2.在自定义操作编辑器中选择“安装”节点。在“操作”菜单上,选择“添加自定义操作”。
3.在“选择项目中的项”对话框中,双击“应用程序文件夹”。
4.选择“主输出来自installDB(活动)”项,然后单击“确定”关闭对话框。
5.在“属性”窗口中,选择CustomActionData属性并键入“/server=[server]/uid=[UID]
/pwd=[PWD]/targetdir="[TARGETDIR]/"”。
附:/targetdir="[TARGETDIR]/"是安装后的目标路径,为了在installDB类中获得安装后的路径,我们设置此参数。
六).添加文件
1.将SQL Server备份成文件DB.dat添加到“setup1”项目(在企业管理器中右击数据库->所有工作->备份数据库,备份成一个文件,取名为DB.dat)
2.将安装文件LisenceFile.rtf添加到“setup1”项目
3.在用户界面编辑器中,选择许可协议,设置LisenceFile属性为LisenceFile.rtf文件
4.一般会自动将依赖项添加到“检测到的依赖项”,如果没有,那么我们要手动将其加入步骤
5)
Crystal_Managed2003.msm(如果有水晶报表)
dotnetfxredist_x86.msm(.net一定是必须的)
...(如果有引用其他的dll)
5.如果使用了水晶报表,手动加入要包含的文件:项目-->添加-->合并模块(添加你的程序文件)(包括dotNetFramework和MDAC27),位于:C:/Program Files/Common Files/Merge Modules/下,*为必要的
具体功能如下:
(托管组件MSM处理所有托管组件的分发,其中包括Windows窗体查看器、Web窗体查看器和所有Crystal Decisions命名空间)
*Crystal_Managed2003.msm
Crystal_Managed2003_chs.msm
(对于使报表运行所需的所有其他文件,由数据库访问MSM处理其分发。其中包括数据库、导出和图表驱动程序。)
*Crystal_Database_access2003.msm
Crystal_Database_access2003_chs.msm
(KeyCode MSM处理Crystal Decisions密钥号码的安装,注意是添加合并模块,否则没有“MergeMouduleProperties”属性)
*Crystal_regwiz2003.msm
(如果报表文件使用了的dataset数据集对象,那么
VC_User_CRT71_RTL_X86_---.msm和VC_User_STL71_RTL_X86_---.msm模块也必须包含在安装工程中。而且这两个模块的文件安装属性的"Module Retargetable Folder"项必须修改成为系统目录)
VC_User_CRT71_RTL_X86_---.msm
VC_User_STL71_RTL_X86_---.msm
(很多人经常出现查询错误,不妨加上这个)
5.打开解决方案-->右键点击Crystal_regwiz2003.msm的属性,在“MergeMouduleProperties”里的“License Key”填入:AAP5GKS0000GDE100DS(这个是你生成Crystal Report是用到的注册号的密码!)
七).打包時加入卸载功能:
方法一:
1.在打包項目中添加文件msiexec.exe(一般可在c:/windows/system32/下找到)
2.在文件系统视图中选择应用程序文件夾,在msiexec.exe上按右键,选择创建快捷方式,重命