C# Winform 安装怎么包含数据库

C# Winform 安装怎么包含数据库,第1张

C#的c/s的winform,数据库为sql2k,

应用程序包括如下文件:

1exe,1dll,1jpg,1xml,donetsetupexe以及数据库文件1mdf,1ldf(或数据库安装文件1sql)。

打包要求:

(1)自动检测是否安装donet环境,如没安装,则提示自动安装。

(2)安装时自动安装数据库(附加mdf或运行1sql)。

(3)在安装界面上能自定义一些安装或提示。

安装项目:

六个子项:文件系统、注册表、文件类型、用户界面、自定义 *** 作、启动条件。

其中我们在打包过程中经常要用到的有文件系统、注册表、用户界面和自定义 *** 作。

文件系统:向应用程序文件夹、用户的程序菜单、用户桌面下输出项目文件(四种类型:文件夹、项目输出、文件和程序集),还可以创建快捷方式(一般是放在桌面或程序菜单中)文件系统编辑器表示目标计算机上的文件系统,使用该工具可以指定应用程序文件安装的位置。在大多数情况下,希望将应用程序文件放在 Application Folder 中或在 Application Folder 下创建的子文件夹中。安装在目标计算机上以后,来自 Application Folder 的文件将位于 Program Files\Manufacturer\ProductName文件夹中,其中 Manufacturer 是安装 Visual Studio 时使用的公司名,而 ProductName 是用于部署项目的名称。可以在安装项目的属性窗口中重写这两个设置。

注册表:可以向注册表中插入键,在安装应用程序的同时创建注册表项。

用户界面:系统自动提供一组在安装期间显示的默认对话框。根据正在构建的项目的类型,所提供的这组对话框有所不同。使用用户界面编辑器,可以将对话框重新排序或删除对话框。在编辑器中显示的对话框树包含两部分:安装与管理员安装。安装部分包括终端用户运行安装程序时显示的对话框,而管理员安装部分包含系统管理员将安装程序上传到某个网络位置时显示的对话框。如果想构建一个没有用户界面的安装,只需在对话框树上删除安装部分中的所有对话框。或者,可以从一组可用的模板将对话框添加到安装项目中。

启动条件:使用启动条件编辑器来定义成功运行安装所必须满足的条件。例如,可以检查特定版本的 *** 作系统。如果用户尝试在一个不满足条件的系统上安装,安装将中止。还可以配置启动条件来搜索目标计算机上的某个特定文件、注册表项或组件。在开始安装时,Windows Installer 执行搜索和条件评估,并按启动条件编辑器中所示的顺序执行。

自定义 *** 作:自定义 *** 作提供了一种在安装结束时执行任务的机制。例如,您可能希望在安装应用程序之前先配置好数据库,此时您可以用自定义 *** 作来完成数据库的创建。自定义 *** 作构建为单独的 dll 或 exe 文件,然后使用自定义 *** 作编辑器添加到项目中,其中这些 *** 作与不同的安装阶段有关。自定义 *** 作编辑器包括几个单独的文件夹,用于放置执行 Install、Commit、Rollback 或 Uninstall 任务的二进制文件。

InstallerClass属性:如果添加的自定义 *** 作是继承自Installer类(注意放在哪个文件夹下就要重载哪个相应的方法),该属性设为True,否则该属性设为False(注意:为False时要指定dll文件的入口——EntryPoint属性)。

卸载:可以在安装应用程序中提供一个卸载的快捷方式,借助于系统提供的卸载程序msiexecexe(在c:\windows\system32目录下),并把安装程序项目的ProductCode属性值赋给快捷方式的Arguments属性(注意:在属性值前加/x)

安装程序类:SystemConfigurationInstall命名空间下

Installer类有四个可以重载的方法,分别是Install,Commit,Rollback,Uninstall。

分别对应于自定义 *** 作中的四个文件夹:安装、提交、回滚、卸载。

数据库安装:

1、 附加数据库

2、 执行创建数据库的Sql语句

3、 完全备份的数据库文件还原

可以将能生成数据库的的文件(分离的数据库文件、Sql脚本文件或完全备份文件)部署到应用程序文件夹下,然后在重载的Install方法里加入生成数据库代码(注意:生成数据库的代码应该在调用基类的Install方法后)。

数据库的卸载:首先删除数据库,再调用基类的Uninstall方法删除应用程序文件夹里的文件(顺序不能乱)。

几个特殊点:

1、 文件系统中的AlawaysCreate属性:本属性可以指定为False,然后Condition属性为空时相当于AlawaysCreate属性为True(Transitive属性必须为True才计算Condition属性的值)。Condition 属性可用于向安装程序添加条件逻辑,例如,仅为特定的 *** 作系统版本安装某个文件。它还可以与文件搜索、注册表搜索或组件搜索一起使用,以在找不到指定项时使安装过程终止。可以是 Windows Installer 条件或属性,Property 属性中包含的值,文件、注册表或组件搜索中的 Name 属性,也可以是使用逻辑运算符的上述语句的组合。

2、 创建快捷方式(在程序中创建,可以有作为附加任务,根据用户的选择情况,有选择的创建):

添加引用:COM 选项卡并选择 Windows Script Host Object Model

创建对象:创建一个 WshShell 的实例对象,接着通过该对象的 CreateShortcut 方法来创建 IWshShortcut 接口的实例对象,传递给 CreateShortcut 方法的参数是将要创建的快捷方式的完整路径(包括该快捷方式的名字)。

设置属性:TargetPath、WorkingDirectory、WindowStyle、Description、IconLocation

生成快捷方式:调用 IWshShortcutSave 方法生成快捷方式文件。

一般来说数据处理都是通过web的方式访问较好,即数据库放在服务器上,然后通过web访问,要做到这个前提你必须要有一个服务器,具体方法有WCF跟Webservice这些方式,就像你QQ登录其实是访问腾讯的服务器获取信息

不过你这种只是安装部署在客户调试的,最简单的方法就是在客户端安装SQL,然后安装部署后,把数据库附加到客户端的数据库

总而言之,如果是少量的数据最好是有配置文件或者是XML的形式保存,大量数据处理再使用SQL

希望对你有所帮助

以上就是关于C# Winform 安装怎么包含数据库全部的内容,包括:C# Winform 安装怎么包含数据库、winform在安装部署时怎么加入sql2005的相关数据库、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9860627.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存