让你仔细看MSDN,你不看,现在又来问了:)

80酷酷网    80kuku.com

  以下演练演示在安装期间如何使用自定义操作和 CustomActionData 属性创建数据库和数据库表。
创建安装程序类

  1. 在“文件”菜单上指向“新建”,然后选择“项目”。
  2. 在“新建项目”对话框中,选择“项目类型”窗格中的“Visual Basic 项目”,然后选择“模板”窗格中的“类库”。在“名称”框中键入 DBCustomAction
  3. 从“项目”菜单中选择“添加新项”。
  4. 在“添加新项”对话框中选择“安装程序类”。在“名称”框中键入 DBCustomAction

创建数据连接对象
  1. 在“服务器资源管理器”中,选择“数据连接”。右击并选择“添加连接”。
  2. 在“数据链接属性”对话框中,输入对您的 SQL Server 配置有效的服务器名称、用户名和密码值。在“数据库”框中,键入 master。选中“允许保存密码”复选框。
  3. 将新连接拖到“DBCustomAction.vb”设计器中以创建“sqlConnection1 对象”。

创建包含 SQL 语句的文本文件以创建数据库
  1. 在“解决方案资源管理器”中,选择“DBCustomAction”项目。从“项目”菜单中选择“添加新项”。
  2. 在“添加新项”对话框中,选择“文本文件”。在“名称”框中,键入 sql.txt(必须是小写)。
  3. 将以下内容添加到 sql.txt 文件中:
    CREATE TABLE [dbo].[Employees] ([Name] [char] (30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,[Rsvp] [int] NULL ,[Requests] [nvarchar] (4000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL ) ON [PRIMARY];ALTER TABLE [dbo].[Employees] WITH NOCHECK ADD CONSTRAINT [PK_Employees] PRIMARY KEY CLUSTERED ([Name]) ON [PRIMARY];
  4. 在“解决方案资源管理器”中,选择“sql.txt”。在“属性”窗口中,将“生成操作”属性设置为“嵌入的资源”。

将代码添加到安装程序类中以阅读文本文件
  1. 在“解决方案资源管理器”中,选择“DBCustomAction.vb”。在“视图”菜单上,选择“代码”。
  2. 在模块的顶部添加以下 Imports 语句:
    Imports System.IOImports System.Reflection
  3. 将以下代码添加到类中:
    Private Function GetSql(ByVal Name As String) As String   Try      ' Get the current assembly.      Dim Asm As [Assembly] = [Assembly].GetExecutingAssembly()      ' Resources are named using a fully qualified name.      Dim strm As Stream = Asm.GetManifestResourceStream(Asm.GetName().Name + "." + Name)      ' Read the contents of the embedded file.      Dim reader As StreamReader = New StreamReader(strm)      Return reader.ReadToEnd()   Catch ex As Exception      MsgBox("In GetSQL: " & ex.Message)      Throw ex   End TryEnd FunctionPrivate Sub ExecuteSql(ByVal DatabaseName As String, ByVal Sql As String)   Dim Command As New SqlClient.SqlCommand(Sql, sqlConnection1)   Command.Connection.Open()   Command.Connection.ChangeDatabase(DatabaseName)   Try      Command.ExecuteNonQuery()   Finally      ' Finally, blocks are a great way to ensure that the connection       ' is always closed.      Command.Connection.Close()   End TryEnd SubProtected Sub AddDBTable(ByVal strDBName As String)   Try      ' Create the database.      ExecuteSql("master", "CREATE DATABASE " + strDBName)      ' Create the tables.      ExecuteSql(strDBName, GetSql("sql.txt"))   Catch ex As Exception       ' Report any errors and abort.       MsgBox("In exception handler: " & ex.Message)       Throw ex   End TryEnd SubPublic Overrides Sub Install(ByVal stateSaver As System.Collections.IDictionary)   MyBase.Install(stateSaver)   AddDBTable(Me.Context.Parameters.Item("dbname"))End Sub
  4. 在“生成”菜单上,选择“生成 DBCustomAction”。

创建部署项目
  1. 在“文件”菜单上,选择“添加项目”->“新建项目”。
  2. 在“添加项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格中的“安装项目”。在“名称”框中,键入 DBCustomAction Installer
  3. 在“属性”窗口中,选择 ProductName 属性并键入 DB Installer
  4. 在文件系统编辑器中,选择“应用程序文件夹”。在“操作”菜单上,选择“添加”->“项目输出”。
  5. 在“添加项目输出组”对话框中,为“DBCustomAction”项目选择主输出。

创建自定义安装对话框
  1. 在解决方案资源管理器中选择“DBCustomAction Installer”项目。在“视图”菜单上指向“编辑器”,然后选择“用户界面”。
  2. 在用户界面编辑器中,选择“安装”下的“启动”节点。在“操作”菜单上,选择“添加对话框”。
  3. 在“添加对话框”对话框中选择“文本框 (A)”对话框。
  4. 在“操作”菜单上选择“上移”。重复此步骤,直到“文本框 (A)”对话框位于“安装文件夹”节点之上。
  5. 在“属性”窗口中,选择 BannerText 属性并键入 Specify Database Name
  6. 选择 BodyText 属性并键入 This dialog allows you to specify the name of the database to be created on the database server
  7. 选择 Edit1Label 属性并键入 Name of DB:
  8. 选择 Edit1Property 属性并键入 CUSTOMTEXTA1
  9. 选择 Edit2VisibleEdit3VisibleEdit4Visible 属性,并将它们设置为 False

创建自定义操作
  1. 在解决方案资源管理器中选择“DBCustomAction Installer”项目。在“视图”菜单上指向“编辑器”,然后选择“自定义操作”。
  2. 在自定义操作编辑器中选择“安装”节点。在“操作”菜单上,选择“添加自定义操作”。
  3. 在“选择项目中的项”对话框中,双击“应用程序文件夹”。
  4. 选择“主输出来自 DBCustomAction(活动)”项。
  5. 在“属性”窗口中,选择 CustomActionData 属性并键入 /dbname=[CUSTOMTEXTA1]
  6. 在“生成”菜单上选择“生成 DBCustomActionInstaller”。

在开发计算机上安装
  • 在解决方案资源管理器中选择“DBCustomAction Installer”项目。在“项目”菜单上选择“安装”。
    这将在开发计算机上运行安装程序。

部署到其他计算机
  1. 在 Windows 资源管理器中,定位到项目目录并查找所生成的安装程序。默认路径将是 \documents and settings\yourloginname\DBCustomAction Installer\project configuration\DBCustomAction Installer.msi。默认的“项目配置”是“Debug”。
  2. 将 DBCustomAction Installer.msi 文件和该目录下的其他所有文件和子目录复制到另一台计算机上。
    注意 若要在未连网的计算机上进行安装,请将文件复制到 CD-ROM 等传统媒体中。

    在目标计算机上双击 Setup.exe 文件来运行安装程序。

卸载应用程序
  1. 在 Windows“控制面板”中,双击“添加/删除程序”。
  2. 在“添加/删除程序”对话框中,选择“DBCustomAction 安装程序”并单击“移除”。
    提示 若要从开发计算机上卸载,则在“项目”菜单上选择“卸载”。

请参见


| | 通过 ADO.NET 连接到数据源 |  


分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: