If you use Microsoft Outlook and installed at least an add-in, third-party component or any other mail-related software I bet you are familiar with either the following message:
A program is trying to access e-mail address information stored in Outlook. If this is unexpected, click Deny and verify your antivirus software is up-to-date.
or this one:
A program is trying to send an e-mail message on your behalf. If this is unexpected, click Deny and verify your antivirus software is up-to-date.
or maybe this other one:
A program is trying to perform an action that may result in an e-mail message being sent on your behalf. If this is unexpected, click Deny and verify your antivirus software is up-to-date.
All these messages are generated by the Outlook E-mail Security settings (starting from Outlook 2000). This security update affects how other applications interact with Outlook by changing the default security zone settings from "Internet" to "restricted". The popup will allow you to suppress the warning, but only for a small amount of time (usually 10 minutes).
If you want to permanently disable these popup messages you have basically two options: doing that on global basis - only if you're using Microsoft Exchange Server to handle the mail process - or to that on each specific client.
To configure the security warning globally you can alter the default configuration settings as explained here (for Exchange 2010 and below) and here (for Exchange 2013 and above).
If you prefer to fix the issue on each specific client, you need to do is to check the client's Outlook version and act accordingly.
Outlook 2013
If you can run Outlook with administrative rights, you can do it through the Outlook options panel:
- Right-click on the Outlook shortcut holding the SHIFT key and choose Run as administrator
- Go to File > Options > Trust Center > Programmatic Access
- Set the programmatic access to Never warn me about suspicious activity (not recommended)
IMPORTANT NOTE: If these option are greyed out, it usually means that you didn't run Outlook with administrative rights.
As an alternative way, you can achieve the same result by altering your registry file in the following way:
- Navigate through HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\15.0\Outlook\Security (create the key if it doesn't exist)
- Add the following DWORD item:
- CheckAdminSettings , with a value of 1.
- AdminSecurityMode , with a value of 3.
- PromptSimpleMAPISend , with a value of 2.
- PromptSimpleMAPINameResolve , with a value of 2.
- PromptSimpleMAPIOpenMessage , with a value of 2.
- PromptOOMCustomAction , with a value of 2.
- PromptOOMSend , with a value of 2.
- PromptOOMAddressBookAccess , with a value of 2.
- PromptOOMAddressInformationAccess , with a value of 2.
- PromptOOMMeetingTaskRequestResponse , with a value of 2.
- Navigate through HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\15.0\outlook\security (create the key if it doesn't exist)
- Add the following DWORD items:
- CheckAdminSettings , with a value of 1.
- AdminSecurityMode , with a value of 3.
- PromptSimpleMAPISend , with a value of 2.
- PromptSimpleMAPINameResolve , with a value of 2.
- PromptSimpleMAPIOpenMessage , with a value of 2.
- PromptOOMCustomAction , with a value of 2.
- PromptOOMSend , with a value of 2.
- PromptOOMAddressBookAccess , with a value of 2.
- PromptOOMAddressInformationAccess , with a value of 2.
- PromptOOMMeetingTaskRequestResponse , with a value of 2.
For a complete listing of all these switch, with full explanation of their values, you can read the following Microsoft KB article.
Outlook 2010
Follow the same instruction for Outlook 2013: if you plan to alter the Registry settings, replace the 15.0 part of both keys with 14.0.
Outlook 2007
Follow the same instruction for Outlook 2013/2010 with the following differences:
- If you go for the Options menu, the path is slightly different: Tools > Trust Center > Programmatic Access
- If you plan to alter the Registry settings, replace the 15.0 part of both keys with 12.0
Outlook < 2007
Unfortunately, the Trust Center > Programmatic Access is not available on the older versions of Outlook - and the registry key method won't work either. If you are still using these, the best thing you can do is to get a very useful freeware tool called "Express ClickYes", which does nothing less than automatically and istantly clicking the YES button every time the popup shows itself. You can get it from its official download page.
Thank you very much. This helped tremendously with an old vb6 screen my company is still using that uses MAPI to send out emails.
Thanks, this really helped fix the issue that i was facing for long time
This did not work.
Thank you so much!! I have Outlook 2010, and the registry modifications were SPOT ON!!! You are a lifesaver!!
The example below work for excel 2003 VBA:
.Display
Application.Wait (Now + TimeValue("00:00:02")) 'wait 2 seconds from now
strWindowTitle = subjectLine ' & " - message"
AppActivate strWindowTitle ', True
SendKeys "^~", True 'send "ctrl Enter to 'send' the email without prompts
AppActivate "Microsoft Excel", True
First I use .Display instead of .Send (the send is what triggers the warning). Next is needed an application time delay (excel VBA) because Outlook needs some time to execute it job with the email) (that more important if the job involves multiple emails). Next I open the email message window, and send “ctlr Enter”, which puts the message in the Outlook Outbox. Voila, VBA will continue to the next record and Outlook is ready to send, and no delay message.
you are amazing