打包的具体操作步骤(VS.net2003
+
win2K):
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
(如果报表文件使用了 ADO.NET 的 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是用到的注册号的密码!)
6 )生成解决方案(或直接按Ctrl + Shift + B)
至此整个分发程序已经做好,再把刚才做的那个安装程序双击一下……
-----------------------------------------------------------------------
打包時加入卸载功能:
方法一:
1 .在打包項目中添加文件msiexec.exe(一般可在c:\windows\system32\下找到)
2 .在文件系統視圖中選擇應用程序文件夾,在msiexec.exe上按右鍵,選擇創建快捷方式,重命名快捷方式為 " 卸载 " .
3 .更改此快捷方式的Arguments 为 " /x {產品id} " ,產品id的值為打包項目的ProductCode屬性值.
方法二:(推荐)
1 .先生成安装包,记下ProductCode(选择解决方案资源管理器根目录如setup1,再查看属性标签,不是右键中的属性),下面要用到
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的pluginstaller插件装上后,用vb.net的自带的打包工具打包,就会自动把
.net framework环境打进去,再下面的步骤进行设置,就可以把MDAC也打包.
使用 Setup 项目安装 MDAC
1 .确保 Visual Studio .NET 框架引导程序插件已安装。
2 .在 Solution Explorer 中选择 Setup 项目。
从 View 菜单指向 Editor,并选择 Launch Conditions(启动条件)。
3 .选择 Requirements on Target Machine(搜索目标计算机) 节点。
从 Action 菜单,选择 Add Registry Launch Condition(添加注册表搜索)。
4 .选择 Search for RegistryEntry1 节点。在 Properties 窗口中,
选择 RegKey 属性,并键入 Software\Microsoft\DataAccess。
5 .选择 Root 属性,并选择 vsdrrHKLM。
6 .选择 Value 属性,并键入 FullInstallVer。
7 .选择 Property 属性,并键入 MDACSEARCH。
8 .在 Launch Conditions Editor(启动条件) 中,添加Condition1 节点。
选择 Condition1 节点,在 Properties 窗口中,选择 Condition 属性,并选择 MDACSEARCH >= " 2.6 " 。
9 .在 Solution Explorer 中选择 Setup 项目。在 Project 菜单上,选择 Properties。
10 .将 Bootstrapper 属性设置为 Windows Installer Bootstrapper(Windows 安装引导程序)。
编译 Setup 项目时,.NET 框架可重新分发软件包和 MDAC 将同时与该 Setup.exe 一起打包。
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
(如果报表文件使用了 ADO.NET 的 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是用到的注册号的密码!)
6 )生成解决方案(或直接按Ctrl + Shift + B)
至此整个分发程序已经做好,再把刚才做的那个安装程序双击一下……
-----------------------------------------------------------------------
打包時加入卸载功能:
方法一:
1 .在打包項目中添加文件msiexec.exe(一般可在c:\windows\system32\下找到)
2 .在文件系統視圖中選擇應用程序文件夾,在msiexec.exe上按右鍵,選擇創建快捷方式,重命名快捷方式為 " 卸载 " .
3 .更改此快捷方式的Arguments 为 " /x {產品id} " ,產品id的值為打包項目的ProductCode屬性值.
方法二:(推荐)
1 .先生成安装包,记下ProductCode(选择解决方案资源管理器根目录如setup1,再查看属性标签,不是右键中的属性),下面要用到
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的pluginstaller插件装上后,用vb.net的自带的打包工具打包,就会自动把
.net framework环境打进去,再下面的步骤进行设置,就可以把MDAC也打包.
使用 Setup 项目安装 MDAC
1 .确保 Visual Studio .NET 框架引导程序插件已安装。
2 .在 Solution Explorer 中选择 Setup 项目。
从 View 菜单指向 Editor,并选择 Launch Conditions(启动条件)。
3 .选择 Requirements on Target Machine(搜索目标计算机) 节点。
从 Action 菜单,选择 Add Registry Launch Condition(添加注册表搜索)。
4 .选择 Search for RegistryEntry1 节点。在 Properties 窗口中,
选择 RegKey 属性,并键入 Software\Microsoft\DataAccess。
5 .选择 Root 属性,并选择 vsdrrHKLM。
6 .选择 Value 属性,并键入 FullInstallVer。
7 .选择 Property 属性,并键入 MDACSEARCH。
8 .在 Launch Conditions Editor(启动条件) 中,添加Condition1 节点。
选择 Condition1 节点,在 Properties 窗口中,选择 Condition 属性,并选择 MDACSEARCH >= " 2.6 " 。
9 .在 Solution Explorer 中选择 Setup 项目。在 Project 菜单上,选择 Properties。
10 .将 Bootstrapper 属性设置为 Windows Installer Bootstrapper(Windows 安装引导程序)。
编译 Setup 项目时,.NET 框架可重新分发软件包和 MDAC 将同时与该 Setup.exe 一起打包。