如何禁止ACCESS启动时的Shift键

luoxiangjun 2003-10-21 12:52:17
ACCESS应用系统:要防止受限用户访问基本表,用户权限好像不起作用,按SHIFT进去后可以修改所有的表,编译成MDE文件也不行。
...全文
633 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
changechange 2003-10-28
  • 打赏
  • 举报
回复
默认引用就是DAO
luoxiangjun 2003-10-28
  • 打赏
  • 举报
回复
各位大虾:
我还是不知道如何引用dao
我直接添加了以上代码,完全可以执行和起作用 97,2000都可以?
WilsonRW 2003-10-27
  • 打赏
  • 举报
回复
值得关注
changechange 2003-10-27
  • 打赏
  • 举报
回复
因为他需要调用DAO的方法,所以必须先引用DAO

如何启动或禁止(禁用)shift键锁定(shift键解锁)

作者:ec 更新日期:2002-11-20 14:04:12 浏览人次:63




专题地址:http://access911.net/index.asp?board=4&recordid=71FAB01E


问题:



如何启动或禁止(禁用)shift键锁定(shift键解锁)《其他》




回答:



以下代码源自 Access 帮助

AllowBypassKey 属性
请参阅 示例 特性使用 AllowBypassKey 属性可以指定是否允许用 Shift 键来忽略启动属性和 AutoExec 宏。例如,将 AllowBypassKey 属性设为 False 可避免用户忽略启动属性和 AutoExec 宏。

设置
AllowBypassKey 属性使用以下设置:

设置 说明
True 允许用户使用 Shift 忽略启动属性和 AutoExec 宏。
False 禁止用户使用 Shift 忽略启动属性和 AutoExec 宏。


可以使用宏或者 Visual Basic 设置该属性。

若要使用宏或 Visual Basic 设置 AllowBypassKey 属性,必须使用以下方法创建该属性:

在 Microsoft Access 数据库 (.mdb) 中,可以通过使用 CreateProperty 方法添加该属性,并将其追加到 Database 对象的 Properties 集合中。
在 Microsoft Access 项目 (.adp) 中,可以通过使用 Add 方法将该属性添加到 CurrentProject 对象的 AccessObjectProperties 集合中。
说明
调试应用程序时,应确保 AllowBypassKey 属性设为 True。

该属性的设置仅在下一次打开应用程序数据库时才会生效。

示例
下面的示例显示了一个名为 SetBypassProperty 的过程,该过程传递要设置的属性的名称、数据类型及所需设置。一般用途过程 ChangeProperty 将尝试设置 AllowBypassKey 属性,如果找不到该属性,则用 CreateProperty 方法将其追加到 Properties 集合中。这是必要的步骤,因为只有在添加之后,该属性才出现在 Properties 集合中。

Sub SetBypassProperty()
Const DB_Boolean As Long = 1
ChangeProperty "AllowBypassKey", DB_Boolean, False
'--------------如果需要解开shift锁定可以用以下代码:
'ChangeProperty "AllowBypassKey", DB_Boolean, true

End Sub

Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer
Dim dbs As Object, prp As Variant
Const conPropNotFoundError = 3270

Set dbs = CurrentDb
On Error GoTo Change_Err
dbs.Properties(strPropName) = varPropValue
ChangeProperty = True

Change_Bye:
Exit Function

Change_Err:
If Err = conPropNotFoundError Then ' Property not found.
Set prp = dbs.CreateProperty(strPropName, _
varPropType, varPropValue)
dbs.Properties.Append prp
Resume Next
Else
' Unknown error.
ChangeProperty = False
Resume Change_Bye
End If
End Function





luoxiangjun 2003-10-26
  • 打赏
  • 举报
回复
请问楼上的大侠:
为什么要引用Dao3.6 ?
如何引用?
#include "dao3.6" ?
aaa2000 2003-10-22
  • 打赏
  • 举报
回复
要记得引用DAO 3.6
aaa2000 2003-10-22
  • 打赏
  • 举报
回复
'使SHIFT键失效
Changeproperty "Allowbypasskey", dbBoolean, False


Public Function Changeproperty(Strpropname As String, Varproptype As Variant, _
Varpropvalue As Variant) As Integer
'功能: 试图对数据库属性进行设置,如果没有该属性,
' 则使用 Createproperty 方法将其添加到 Database 对象的 Properties 集合中。
' 因为这些属性只有至少设置过一次以后,才会显示在 Properties 集合中。

Dim prp As Property
Dim dbs As Database

Set dbs = CurrentDb

Const Conpropnotfounderror = 3270

On Error GoTo Change_Err
dbs.Properties(Strpropname) = Varpropvalue
Changeproperty = True

Change_Bye:
Exit Function

Change_Err:
If Err = Conpropnotfounderror Then ' Property Not Found.
Set prp = dbs.CreateProperty(Strpropname, _
Varproptype, Varpropvalue)

dbs.Properties.Append prp
Resume Next
Else
'Unknown Error.
Changeproperty = False
Resume Change_Bye
End If
End Function

7,714

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧