水晶报表部署的解决方案

打包的具体操作步骤(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 一起打包。 

你可能感兴趣的:(解决方案)