.net打包,包含MSDE数据库
来源:互联网 发布:vip域名后缀可以备案 编辑:程序博客网 时间:2024/04/29 02:03
.net 程序 包含(msde)打包步骤:
工具: vs2005, Msde sp3a, Orca
1.用vs2005新建 安装项目 setup1
2.在 文件系统->应用程序文件夹 添加要打包的目标程序
3.在 用户的“程序”菜单和用户桌面添加主程序的快捷方式
4.添加 许可协议
用安装项目上右键选择用户界面, 添加对话框 ,在属性选择许可协议文本;
5.修改安装项目的属性:
6.修改发布属性,
在资料管理器 右键安装项目setup1,选择属性,点击系统必备,勾选dotnetframework 2.0和MADC
7.打包MSDE sp3a
选择“文件系统编辑器”,在“视图“菜单上指向“添加”,然后选择“合并模块…”(Merge Moudle),在添加模块中,找到MSDE sp3安装文件所在目录,将MSM和MSM/1033下的所有文件,添加进来。
在安装项目Setup1的属性(Properties)中的“Search Path”,添加MSM,MSM/1033和MSM/2052目录。
生成安装文件 setup1.msi后:
用Orca MSI安装文件修改器打开生成的安装包(Setup1.msi)文件,在左列的表栏中
选择“InstallExecuteSequence”表,修改下面的属性值:
GetSqlStates.XXXXXX 103改成421
RemoveExistingProducts值改成1800
InstallInitialize值改成1799
在InstallUISequence
选择“InstallUISequence”表,修改下面的值:
GetSqlStates.XXXXXX 103改成421
选择“Property”表,添加以下三个属性:
SqlInstanceName:nhls 实例服务名
SqlSecurityMode:SQL (不加这行确实也行,就是没办法用SQL模式登录)
SqlSaPwd:nhls sa的密码
8.附件数据库
新建一个类库项目InstallAction,删除自动带出的class1.cs,添加新项,选择选择安装程序类InstallClass.cs;
代码如下:
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Configuration.Install;
- using System.Data.SqlClient;
- using System.Reflection;
- using System.Diagnostics;
- namespace installAction
- {
- [RunInstaller(true)]
- public partial class installClass : Installer
- {
- public installClass()
- {
- InitializeComponent();
- }
- //server:nhls 服务器名称
- //user:sa 用户名
- //pwd:nhls 密码
- //重写虚构函数,安装程序中会自动执行这个函数
- public override void Install(System.Collections.IDictionary stateSaver)
- {
- base.Install(stateSaver);
- Assembly Asm = Assembly.GetExecutingAssembly();
- System.IO.FileInfo FileInfo = new System.IO.FileInfo(Asm.Location);
- string path = FileInfo.DirectoryName; //得到当前安装的程序的路径
- //AddDBTable(this.Context.Parameters["dbname"]);
- string con = "server=localhost//nhls;uid=sa;pwd=nhls;database=master";
- string DataName = "rsgl";
- string strMd = path + @"/" + "rsgl_Data.MDF";
- string strLdf = path + @"/" + "rsgl_Log.LDF";
- RunSqlServer(); //启动sql 服务
- CreateDataBase(con, DataName, strMd, strLdf); //附加数据库
- }
- //如果你想附加数据库的mdf文件和ldf文件,用下面这段程序:
- private void CreateDataBase(string strSql, string DataName, string strMdf, string strLdf)
- {
- String str;
- SqlConnection myConn = new SqlConnection(strSql);
- //EXEC sp_detach_db @dbname = 'BX_FreightMileage_2'//需要先将数据库分离出来
- str = "EXEC sp_attach_db @dbname = '" + DataName + "', @filename1 = '" + strMdf + "',@filename2='" + strLdf + "'";
- SqlCommand myCommand = new SqlCommand(str, myConn);
- myConn.Open();
- myCommand.ExecuteNonQuery();
- myConn.Close();
- }
- public void RunSqlServer()
- {
- Process p = new Process();
- p.StartInfo.FileName = "cmd.exe"; //設定程序名
- p.StartInfo.Arguments = "/c /"net start MSSQL$nhls/" "; //設定程式執行參數观察服务的名称就可以知道为什么是MSSQL$ZJJ
- p.StartInfo.UseShellExecute = false; //關閉Shell的使用
- p.StartInfo.RedirectStandardInput = true; //
- p.StartInfo.RedirectStandardOutput = true; //
- p.StartInfo.RedirectStandardError = true; //重定向错误输出
- p.StartInfo.CreateNoWindow = true; //设置不显示窗口
- p.Start(); //启动
- }
- }
- }
编译生成 InstallAction.dll; 在安装项目的应用程序文件夹添加 InstallAction.dll;
安装项目-》视图-》自定义操作-》安装 下添加自定义操作,选择应用程序文件夹-》InstallAction.dll;
9编译生成 setup.msi, 用Orca 修改参数(参见步骤7)
- .net打包,包含MSDE数据库
- .net 程序 包含(msde)打包步骤
- 如何打包msde(安装数据库)
- 打包msde!
- 打包msde
- 在.net中使用msde访问数据库
- 如何打包msde,并在安装过程中自动安装msde,并且自动附加数据库
- .NET打包安装MSDE以及安装和卸载
- C# 2005 打包MSDE并且自动附加数据库
- INNO打包MSDE
- MSDE数据库附加
- 怎样卸载msde数据库?
- MSDE数据库附加
- MSDE 数据库安装配置
- 将MSDE Sp3(注意是sp3)打包进.Net安装项目中(WinForm应用)
- net打包部署数据库
- .net打包数据库
- net打包部署数据库
- 初始化多选下拉款并判断是否换行
- linux那些事儿之我是i2c -- Gsenser(四)
- android开发-使用Dialog AlertDialog
- 又一次来到合肥
- ActiveX(一)
- .net打包,包含MSDE数据库
- TI DSP集成开发环境CCS的使用
- MFC学习之 创建ActiveX控件 遇到的问题
- ActiveX(二)
- UVa 442 Matrix Chain Multiplication
- ActiveX(三)
- easyui中动态得到需要的多选框id并使之选中
- ActiveX(四)
- SAP配置webdynpro完全手册 .