设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 32236|回复: 106
打印 上一主题 下一主题

Access ADP 的启动过程控制探讨

[复制链接]

点击这里给我发消息

跳转到指定楼层
1#
发表于 2009-6-4 22:38:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
探讨如何控制 Access ADP 的启动和关闭,以保证数据库的安全运行。

由于 ADP 只有一个数据库连接,没有象 Access mdb 那样的本地表和链接表,因此只有使用一个 ADO 连接来连接一个本地的 Access mdb 数据库存储本地的配置信息。为什么使用 ADO 呢?主要是因为 ADP 本身就是使用 ADO 技术,我们开发应用程序没有必要再使用一个 DAO 对象来增加机器的负担。假设,我们将这个 Access mdb 数据库文件命名为 Config.accdb (因为是用 Access 2007 缘故),在这个数据库中我们可以存储 ADP 中用到的 SQL Server 数据库的连接信息,如服务器实例及连接端口、数据库名称、登录ID、以及登录密码,当然还可以存储 ADP 应用程序使用者的信息,例如应用程序的名称、授权应用单位、使用者的登录用户名,还有就是用它来存储应用程序功能区的 XML,等等。



图1 ADP 用户登录窗体流程图
从图中,我们看出应用程序最少包括一个用户登录窗体、一个项目配置窗体、一个配置数据库、一个项目对象(自定义的类)、一个应用程序的功能区。ADP 的数据库连接随登录窗体打开而打开,随登录窗体关闭而断开,这样就保证了 ADP 在未打开的情况下不包含数据库连接,从而保证了数据库的数据库安全。同时,由于是用户登录后才加载功能区,这样可以做到不同的用户可以拥有不同的功能区,从而实现一部分(简单)应用程序权限控制。

当隐藏用户登录窗体后,程序的控制权就交给了应用程序首页窗体和功能区。一旦,将 ADP 关闭,就会自动关闭隐藏的用户登录窗体,这时,在窗体的关闭事件处理程序中就会执行断开 ADP 的数据库连接,同时清空 ADP BaseConnectionString,以保证关闭后的 ADP 文件不包含数据库连接字符串,保证数据库的数据安全,同时为下一次打开 ADP 应用程序时能顺利的调用用户登录窗体,而不是出现默认的 ADP 数据库连接对话框。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

本帖被以下淘专辑推荐:

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享分享 分享淘帖2 订阅订阅
推荐
发表于 2009-6-16 21:36:34 | 只看该作者
顶地你哥看看
回复 支持 1 反对 0

使用道具 举报

2#
发表于 2009-6-7 08:47:23 | 只看该作者
可以看一下吗?
3#
发表于 2009-6-7 12:54:11 | 只看该作者
谢谢朱哥!
4#
发表于 2009-6-11 10:33:15 | 只看该作者
看看
6#
发表于 2009-6-18 08:11:31 | 只看该作者
學習一下社........
7#
发表于 2009-6-18 16:31:33 | 只看该作者
回复学习一下~
8#
发表于 2009-6-20 16:16:04 | 只看该作者
路过看看,谢谢分享!
9#
发表于 2009-6-20 16:39:42 | 只看该作者
谢谢分享
10#
发表于 2009-6-24 21:29:11 | 只看该作者
谢谢朱哥!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-29 04:52 , Processed in 0.087376 second(s), 38 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表