ms-access - 在 ms-access 中启动时禁用 Shift 键

标签 ms-access keyboard-shortcuts vba

问题:在 MS Access 中,您可以在打开数据库时按住shift 键,以绕过启动选项和自动执行脚本。我想永久禁用此功能

首先,我知道这个问题已经在许多其他网站上得到了回答,但是我在这里找不到有关它的问题,但我的需求略有不同。我找到的解决方案侧重于放置隐形按钮来重新启用带密码等的 Shift 键快捷方式。

我想要一个非常简单的解决方案。我想要一个可以添加到我的 AutoExec 脚本中的脚本来禁用 Shift 键快捷键或类似的东西。

不需要重新启用 Shift 键快捷键。

首选最简单、最安全最简单的方法。

谢谢!

最佳答案

我一直使用这段代码

Function SetBypass(rbFlag As Boolean, File_name As String) As Integer
    DoCmd.Hourglass True
    On Error GoTo SetBypass_Error
    Dim db As Database
    Set db = DBEngine(0).OpenDatabase(File_name)
    db.Properties!AllowBypassKey = rbFlag
setByPass_Exit:
    MsgBox "Changed the bypass key to " & rbFlag & " for database " & File_name, vbInformation, "Skyline Shared"
    db.Close
    Set db = Nothing
    DoCmd.Hourglass False
    Exit Function


SetBypass_Error:
    DoCmd.Hourglass False
    If Err = 3270 Then
        ' allowbypasskey property does not exist
        db.Properties.Append db.CreateProperty("AllowBypassKey", dbBoolean, rbFlag)

        Resume Next
    Else
        ' some other error message
        MsgBox "Unexpected error: " & Error$ & " (" & Err & ")"
        Resume setByPass_Exit
    End If
End Function

您向其传递一个文件名,然后说明是否要启用旁路 key 。

问题是任何拥有此代码的其他人都可以使用它来“解锁”您的数据库并启用旁路 key 。

我认为解决这个问题的唯一方法是只为用户提供运行时版本的 Access 权限

关于ms-access - 在 ms-access 中启动时禁用 Shift 键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4184455/

相关文章:

string - 固定字符串 * 7 会比 =Len(7) 的整数使用更少的内存吗?

ms-access - 表字段说明 - MS Access

sql - 使用连续编号对重复项进行编号

java - 警告 : Looking for usage map at page 1774, 但页面类型在 UCanAccess 中为 1

vim - 在 Vim 中,如何删除单词的后缀?

excel - 重新加载表单时如何保留文本框中的值

vba - 从文本中提取姓名

ms-access - 如何锁定设计 View ?

keyboard-shortcuts - PyCharm在带有分屏的窗口之间切换

Xcode Command-Slash 注释快捷方式有时仅有效