Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 在启动时消除安全警告_Vba_Ms Access_Ms Office - Fatal编程技术网

Vba 在启动时消除安全警告

Vba 在启动时消除安全警告,vba,ms-access,ms-office,Vba,Ms Access,Ms Office,打开任何MS Access数据库时,会出现一条安全警告,指出该文件可能对计算机有害。但是,是否有方法删除此消息。或者,如果您降低访问选项中的安全设置,它仍然是一个必要的恶魔,我相信它会消失。当然,设置这些设置是有原因的。您可能可以对程序进行签名。我不确定。阅读并查看是否适用相同的原则。以下是有关认证和安全性的更多说明 认证,包括自我认证: 有关Office代码和宏安全性的安全原则的一般信息: Office 2003的受信任位置默认值 Office 2003中的宏观安全 以下是我几年前与Acc

打开任何MS Access数据库时,会出现一条安全警告,指出该文件可能对计算机有害。但是,是否有方法删除此消息。或者,如果您降低访问选项中的安全设置,它仍然是一个必要的恶魔,我相信它会消失。当然,设置这些设置是有原因的。

您可能可以对程序进行签名。我不确定。阅读并查看是否适用相同的原则。

以下是有关认证和安全性的更多说明

认证,包括自我认证:

有关Office代码和宏安全性的安全原则的一般信息:

Office 2003的受信任位置默认值

Office 2003中的宏观安全

以下是我几年前与Access 2003类似的内部问题的笔记:

好吧,这(显然)是交易

  • 网络服务器不在受信任区域中。使用SP2启动IIRC,打开文件时会出现打开/保存/警告框。默认情况下,UNC路径应位于受信任区域中。我不知道为什么不是这样,但这里有一个解决方案:添加server.dns和server到Internet选项->安全区域->本地Intranet
  • 不安全的表达式不会被阻止。这是一个可笑的过于复杂的访问安全模型(谷歌用于不安全表达式,访问沙箱模式用于更多)。基本上,Access(我认为从2003和/或Jet 4.0 SP8开始)会在注册表项未设置为禁止“不安全表达式”时发出警告。修复方法:将HKLM\Software\Microsoft\Jet\4.0\Engines\SandBoxMode设置为3,这将阻止使用Jet的任何内容的“不安全表达式”。这必须由管理员完成。或者,我认为在管理员为您设置密钥时,对Block Unsafe Expressions提示符回答“Yes”
  • 打开此文件可能不安全。这是一个简单的方法,并且遵循Office中的整个宏观安全模型。只需将工具->宏->安全设置(不要查看工具->安全菜单…这太明显)设置为低
顺便说一句,我仍然不知道什么是“不安全的表达式”,也不知道为什么它一直要求升级到Jet 4.0 SP8,而它已经升级了(我通过检查文件版本来验证它是否已更新)。但随着这些变化,它在启动时不再要求任何东西--MB


您可以在ms access项目启动时通过将access项目置于受信任的位置来消除安全警告。或者更好的是,创建自己的可信位置

我建议在系统(C)驱动器中创建一个包含项目名称的文件夹。例如,我们可以调用文件夹数据库(路径:C:\Database)

然后输入此路径作为注册表项,如下所示:

[HKEY\U CURRENT\U USER\Software\Microsoft\Office\14.0\Access\Security\Trusted 位置\Location20]“路径”=“C:\Database”“说明”=“访问权限” 项目地点“

现在,让我们解释一下该键的作用:

  • 编号为“14.0”的是MS Office的版本。您可以简单地将其更改为表示正在运行的版本的数字
  • “Location20”是我们指定的唯一名称。20可以是尚未使用的任何数字。其他程序,包括默认MS Access向导,可能已经使用了其他号码。或者,如果要将多个路径作为受信任位置,则每个位置必须以不同的数字结尾
  • “C:\Database\”实际上是要设置为受信任位置的物理路径。您可以在此处选择任何路径。我不知道为什么它使用double\,但我只是复制了前面的按键设置示例,这似乎效果最好
  • 不需要描述,但显然可以使用任何描述
有关如何使受信任位置适用于您的MS Access项目的更多详细信息,请阅读此处的详细说明:

  • 在控制面板中,单击“Internet选项”
  • 在“Internet属性”弹出窗口中,选择“安全”选项卡。
    • 选择“本地Intranet”区域
    • 单击“站点”按钮
    • 在“本地Intranet”弹出窗口中,清除“自动检测…”复选框并设置以下复选框:
      • “包括所有未在其他区域中列出的本地(内部网)站点”
      • “包括所有网络路径(UNC)”
    • “好的”
  • “好的”
  • 现在,您内联网上的任何位置或UNC引用的任何位置的所有Access dbs都将立即打开,而不会发出警告。您需要评估便利性/安全性权衡