【问题标题】:How to have Access Macro bypass Outlook Object Model Guard如何让 Access 宏绕过 Outlook 对象模型保护
【发布时间】:2023-03-30 16:01:01
【问题描述】:

我在 MS Access 和 MS Outlook 之间的链接上有很多困难。两者都是 2010 版,我正在使用 EMailDatabaseObject 宏将报告发送到指定的电子邮件地址。效果很好,但是当我尝试运行宏时,我收到一条消息:“程序正在尝试代表您发送电子邮件”并询问我是否要允许(等待 5 秒后)或拒绝。

我对此进行了研究,并意识到导致此问题的是 Outlook 对象模型保护。我已经在这两个程序中配置了选项,将两者的信任中心更改为启用所有宏,将数据库文件位置添加到 Access 的受信任位置中,在 Outlook 的程序访问下选中“从不警告我可疑活动”按钮,并使用所有这些设置,当我运行宏时,它仍然会询问那个烦人的安全警告。

其他解决方案显示了更改 VBA 脚本的方法,但我真的不明白或不知道要更改哪些位置。我已将宏转换为 Visual Basic,代码如下:

Option Compare Database

'------------------------------------------------------------
' AutoExec
'
'------------------------------------------------------------
Function AutoExec()
On Error GoTo AutoExec_Err

DoCmd.SendObject acReport, "Campus-Daily-Report", "PDFFormat(*.pdf)", "*To email goes here*", "", "", "Daily Report Test", "Please take a look at the attached.", False, ""


AutoExec_Exit:
Exit Function

AutoExec_Err:
MsgBox Error$
Resume AutoExec_Exit

End Function

我有一个名为 AutoExec 的宏,目的是让宏在文件打开时立即运行。

请帮助并让我知道我可以为此使用哪些其他解决方案。如果真的需要我更改上面的代码,我不确定如何更改宏的代码。我意识到,当我转换宏时,它变成了另一个以不同方式工作的模块。 Access 中没有用于查看宏代码端的选项。

任何帮助将不胜感激。我更喜欢不会花费我任何美元的解决方案,不管它需要什么。感谢您的帮助。

【问题讨论】:

标签: ms-access macros outlook email outlook-object-model


【解决方案1】:

SendObject 使用 Simple MAPI,无法绕过安全提示。

您可以确保安装了最新版本的防病毒产品(如果您可以控制客户端环境),因此使用 Outlook 对象模型和 Redemption 重写您的代码 - 请参阅 @987654322 @ 获取您的选项列表。

【讨论】:

    猜你喜欢
    • 2020-09-22
    • 2019-05-28
    • 2011-02-18
    • 1970-01-01
    • 2021-07-24
    • 1970-01-01
    • 2017-05-13
    • 2020-09-13
    • 1970-01-01
    相关资源
    最近更新 更多