logo资料库

NET打包安装MSDE以及安装和卸载.doc

第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
资料共4页,全文预览结束
.NET 打包安装 MSDE 以及安装和卸载 1、创建安装项目“Setup1”安装项目 在“文件”菜单上指向“添加项目”,然后选择“新建项目”。 在“添加新项目”对话框中,选择“项目类型”窗格中的“安装和部署项目”,然后选择“模板”窗格中 的“安装项目”。在“名称”框中键入 “setup1”。 单击“确定”关闭对话框。 项目被添加到解决方案资源管理器中,并且文件系统编辑器打开。 在“属性”窗口中,选择 ProductName 属性,并键入”遥测水位数据接收软件”。 选择 setup1 右键添加项目输出将你的应用程序以及相应的类库,数据库文件添加到安装程序 中, 打开文件系统界面, 找到应用程序文件夹, 右键点击你的应用程序,创建两个快捷方式, 右键属性指定对应的图标, 分别拖到用户的"程序"菜单和用户桌面上. 完成初步安装. 2. 添加卸载程序 在打包项目中添加文件 msiexec.exe(一般在 c:\windows\system32(系统目录中)找到)。 在文件系统视图中选择应用程序文件,在 msiexec.exe 上单击右键选择“创建快捷方式”,重命 名快捷方式为“uninst”. 更改此快捷方式 Argmuments 为“/x {产品 ID}”,产品 ID 的值为打包项目的 ProductCode 属性值。 3. 打包 MSDE SP3 选择“文件系统编辑器”,在“视图“菜单上指向“添加”,然后选择“合并模块…”(Merge Moudle), 在添加模块中,找到 MSDE sp3 安装文件所在目录,将 MSM,MSM\1033,MSM\2052 下的所 有文件,添加进来。 在安装项目 Setup1 的属性(Properties)中的“Search Path”,添加 MSM,MSM\1033,MSM\2052 目录。 单击“生成菜单下的“生成解决方案”,编译 Setup1 安装项目工程。 4. 自动附加数据库
解决方案中新添加项目,项目类型为 windows 类库, 然后添加新建项->安装程序类, 打开 Installer1.cs 切换到代码编辑视图, 添加以下代码 private void CreateDataBase() { // 启动 SQL 服务, 预防装完之后服务未启动 Process p = new Process(); p.StartInfo.FileName = "cmd.exe"; p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardInput = true; p.StartInfo.RedirectStandardOutput = true; p.StartInfo.RedirectStandardError = true; p.StartInfo.CreateNoWindow = true; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 {1}; password={2}; Database=master", "(local)\\hw1000", "sa", "sa"); 19 "] + "database\\ShanDongShuiQing.mdf"; 20 "] + "database\\ShanDongShuiQing_log.ldf"; 21 f); p.Start(); p.StandardInput.WriteLine("net start MSSQL$HW1000"); p.StandardInput.WriteLine("exit"); p.StandardOutput.ReadToEnd(); //LogWriter.LogEvent("MDF 路径:" + strMd string strSql = string.Format("server={0}; user id= string strMdf = this.Context.Parameters["targetdir string strLdf = this.Context.Parameters["targetdir
string str; SqlConnection myConn = new SqlConnection(strSql); str = "EXEC sp_attach_db @dbname = N'ShanDongShuiQing SqlCommand myCommand = new SqlCommand(str, myConn); myConn.Open(); myCommand.ExecuteNonQuery(); myConn.Close(); 22 23 24 ', @filename1 = N'" + strMdf + "',@filename2=N'" + strLdf + "'"; 25 26 27 28 29 30 31 IDictionary savedState) 32 33 34 35 36 37 38 39 40 41 42 base.OnAfterInstall(savedState); try { throw new Exception(ex.ToString()); CreateDataBase(); } catch (Exception ex) { protected override void OnAfterInstall(System.Collections. } { } } 编译 InstallDB 项目. 5. 建自定义操作 在解决方案资源管理器中选择安装项目“Setup1”项目,在“视图”菜单上指向“编辑器”,然后选 择“自定义操作”。
在“自定义操作编辑器”中选择“安装”节点。单击右键“添加自定义操作”,在选择项目中的项中选 择“应用程序文件夹”,选择“主输出来自 InstallDB(活动)”。 在“属性窗口”中选择“CustomActionData”属性并键入“/targetdir="[TARGETDIR]\"”。 附:/targetdir="[TARGETDIR]\"是安装后的目标路径,为了在 InstallDB 类中获得安装后的 路径,我们设置此参数。 生成安装程序 6. 修改安装程序 用 Orca MSI 安装文件修改器打开生成的安装包(Setup1.msi)文件,在左列的表栏中 选择“InstallExecuteSequence”表,修改下面的属性值: GetSqlStates.XXXXXX 103 改成 421 RemoveExistingProducts 值改成 1800 InstallInitialize 值改成 1799 在 InstallUISequence 选择“InstallUISequence”表,修改下面的值: GetSqlStates.XXXXXX 103 改成 421 选择“Property”表,添加以下三个属性: SqlInstanceName:MSDEDH 实例服务名 SqlSecurityMode:SQL(不加这行确实也行,就是没办法用 SQL 模式登录) SqlSaPwd:sa 的密码 到此全部完成, 安装软件后测试通过, 卸载通过.
分享到:
收藏