Access数据库打开或关闭沙盒模式(Sandbox mode)以禁用宏或启用宏

大神们在线讲解下,Access数据库打开或关闭沙盒模式(Sandbox mode)以禁用宏或启用宏
最新回答
青苓菀

2026-07-16 03:11:28

Access数据库沙盒模式(Sandbox mode)可通过修改注册表项来打开或关闭,以禁用或启用宏中可能不安全的表达式。默认启用沙盒模式,需管理员权限操作,且不同版本注册表路径不同。

沙盒模式的作用

沙盒模式是Access的一项安全功能,用于阻止“不安全”表达式运行。这些表达式可能使用恶意用户利用的函数或属性,访问未授权的驱动器、文件或其他资源。例如,“终止”和“Shell”等函数可能损坏计算机数据和文件,在沙盒模式下会被阻止。无论数据库是否“受信任”,沙盒模式都会阻止不安全表达式。

设置沙盒模式的方法

使用注册表项指定Access是否在沙盒模式下运行。默认启用沙盒模式,若要允许所有表达式运行,可更改注册表项值以禁用沙盒模式。若不熟悉注册表操作,建议寻求熟悉此操作的人员帮助,且操作前需备份有价值数据,因为注册表编辑不当可能严重损坏操作系统。

禁用沙盒模式(运行不安全表达式)的步骤

并非所有Access安装都包含SandBoxMode注册表项,若找不到不建议添加,以免干扰Office更新。以下是操作步骤:

  • 关闭所有Access实例:关闭要禁用沙盒模式的计算机上运行的所有Access实例。
  • 打开注册表编辑器:按Windows键,键入“运行”后按Enter,在“打开”框中键入“regedit”后按Enter,启动注册表编辑器。
  • 查找注册表项:注册表项位置因Access版本、Windows版本(32位或64位)以及是否为即点即用安装而异。若查找困难,可在注册表中搜索“Access Connectivity Engine”。以下是一些常见版本的可能位置:

    Access 2010:

    SoftwareMicrosoftOffice14.0Access Connectivity EngineEngines

    SoftwareWOW6432NodeMicrosoftOffice14.0Access Connectivity EngineEngine

    Access 2013:

    SoftwareMicrosoftOffice15.0Access Connectivity EngineEngines

    SoftwareWOW6432NodeMicrosoftOffice15.0Access Connectivity EngineEngine

    Access 2016或Access 2019:

    SoftwareMicrosoftOffice16.0Access Connectivity EngineEngineEngine

    SoftwareWOW6432NodeMicrosoftOffice16.0Access Connectivity EngineEngine

    32位Microsoft 365订阅版本或32位即点即用安装的Access:

    SoftwareMicrosoftOfficeClickToRunRegistryMachineSoftwareMicrosoftOffice16.0Access Connectivity EngineEngines

    SoftwareMicrosoftOfficeClickToRunRegistryMachineSoftwareMicrosoftOffice15.0Access Connectivity EngineEngine

    64位Microsoft 365订阅版本或64位即点即用安装的Access:

    SoftwareMicrosoftOfficeClickToRunRegistryMachineSoftwareWow6432NodeMicrosoftOffice16.0Access Connectivity EngineEngine

    SoftwareMicrosoftOfficeClickToRunRegistryMachineSoftwareWow6432NodeMicrosoftOffice15.0Access Connectivity EngineEngines

  • 修改注册表项值:在注册表编辑器右窗格“名称”下双击“SandBoxMode”(若存在),在“编辑DWORD值”对话框的“数值数据”字段中,将值从“3”改为“2”,然后单击“确定”。
  • 关闭注册表编辑器:完成操作后关闭注册表编辑器。
注册表值含义

注册表值可设置为以下值,0表示最宽松,3表示最低允许:

  • 0:沙盒模式一向处于禁用状态。
  • 1:沙盒模式用于Access,但不用于非Access程序。
  • 2:沙盒模式用于非Access程序,但不用于Access。
  • 3:沙盒模式一向使用,这是安装Access时设置的默认值。
其他可能位置

不同安装方法(如MSI与C2R(click to run))在注册表中的位置可能不同,部分Access 365可能找不到对应位置。以下是一些其他可能位置:

  • Access 2007:

    HKLM/software/Microsoft/office/12.0/Access connectivity Engine/Engines

    HKLM/softwareWOW6432//Microsoft/office/12.0/Access connectivity Engine/Engines

  • Access 2010:[HKEY_LOCAL_MACHINESOFTWAREMicrosoftOffice14.0Access Connectivity EngineEngines],“SandBoxMode”=dword:00000002
  • Access 2016:

    HKEY_LOCAL_MACHINESoftwareMicrosoftOfficeClickToRunREGISTRYMACHINESoftwareWow6432BodeMicrosoftOffice16.0Access Connectivity EngineEngines

    [HKEY_LOCAL_MACHINESOFTWAREMicrosoftOffice15.0ClickToRunREGISTRYMACHINESoftwareWow6432NodeMicrosoftOffice15.0Access Connectivity EngineEngines]

其他注意事项
  • 受信任的数据库:无论注册表中是否启用沙盒模式,除非数据库文件位于受信任位置或具有有效信任签名,否则Access不允许运行可能不安全的表达式。若数据库不受信任,Access将使用沙盒模式。

  • 制作安装程序更新设置:可自己制作安装程序如SetupFactory来更新注册表设置。