中易网

vb.net怎样打包?

答案:1  悬赏:20  
解决时间 2021-01-16 07:00
  • 提问者网友:焚苦与心
  • 2021-01-15 12:55
vb.net怎样打包?
最佳答案
  • 二级知识专家网友:神的生死簿
  • 2021-01-15 13:26
打包的具体操作步骤:

1)新建“安装和部署项目”--> “安装向导”

2)选择菜单中 项目--> 添加--> 文件(这里选“创建用于windows应用程序.exe&你的数据库文件”)--> 打开

3)一般会自动将依赖项添加到“检测到的依赖项”,如果没有,那么我们要手动将其加入4)
Crystal_Managed2003.msm (如果有水晶报表)
dotnetfxredist_x86.msm (.net一定是必须的)
... (如果有引用其他的dll)

4)手动加入要包含的文件:项目--> 添加--> 合并模块(添加你的程序文件) (包括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、

(是vc的运行库,估计是Crystal Report或涉及到的某些程序是用vc写的,所以需要它!)
VC_User_CRT71_RTL_X86_---.msm、
VC_User_STL71_RTL_X86_---.msm、

5)打开解决方案--> 右键点击Crystal_regwiz2003.msm的属性,在“MergeMouduleProperties”里的“License Key”填入:AAP5GKS0000GDE100DS(这个是你生成Crystal Report是用到的注册号的密码!)

6)生成解决方案(或直接按Ctrl+Shift+B)

至此整个分发程序已经做好,再把刚才做的那个安装程序双击一下……

-----------------------------------------------------------------------
打包时加入卸载功能:

方法一:
1.在打包项目中添加文件msiexec.exe(一般可在c:\windows\system32\下找到)
2.在文件系统视图中选择应用程序文件夹,在msiexec.exe上按右键,选择创建快捷方式,重命名快捷方式为 "卸载 ".
3.更改此快捷方式的Arguments 为 "/x {产品id} ",产品id的值为打包项目的ProductCode属性值.

方法二:(推荐)
1.先生成安装包,记下ProductCode,下面要用到
2.用VS.net建立一个新的控制台程序uninst.exe文件
'power by: landlordh
'for 2000,xp,2003
Module uninstall
Sub Main()
Dim myProcess As Process = New Process
If System.Environment.OSVersion.ToString.IndexOf( "NT 5 ") Then
myProcess.Start( "msiexec ", "/X{2B65D4A9-C146-4808-AB4B-321FB0779559} ") '改为自己的ProductCode
End If
myProcess.Close()
End Sub
End Module
3.将控制台程序BIN目录的exe文件加入到打包程序文件中,在程序组创建uninst.exe的快捷方式
如果装个ms的控件的话,则直接把framework和msac打在包里。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息