Outlook email to pdf security prompt

谁都会走 提交于 2021-01-28 04:37:14

问题


I have a task which i need to create a program that converts outlook email to pdf.

this is my code

Microsoft.Office.Interop.Outlook.Application app = new Microsoft.Office.Interop.Outlook.Application();
                NameSpace outlookNs = app.GetNamespace("MAPI");
                MAPIFolder rootFolder = outlookNs.Stores["Blah"].GetRootFolder();

                List<MailItem> mailItems = new List<MailItem>();
                Folders subFolders = rootFolder.Folders;
                foreach (Folder folder in subFolders)
                {
                    if (folder.Name == "Inbox")
                    {
                        Items items = folder.Items;
                        foreach (object item in items)
                        {
                            if (item is MailItem)
                            {
                                MailItem mailItem = item as MailItem;
                                string fileName = System.IO.Path.Combine(System.IO.Path.GetTempPath(), "New folder", mailItem.EntryID + mailItem.SenderName.Replace("/", "") + ".msg");
                                mailItem.SaveAs(fileName, Microsoft.Office.Interop.Outlook.OlSaveAsType.olMSG);
                            }
                        }
                    }

                }

the code is working but the outlook contains thousands of email. The outlook prompt a message every 10 minutes similar to the screenshot below

is there a way to avoid getting the message? Programatically or a setting will do?


回答1:


Basically, it's not related to the programming instead of it's related the outlook security settings.

For every version of outlook you can find the settings for this pop-up just follow the instruction on this blog.




回答2:


You can do a setting in your out look.

Mine is outlook 2013.

File->options : a window opens

In the window select Trust Center

You can see a button Trust center Settings

Options in window changes. Select Programmatic access

UnCheck the radio button Never warn me about suspicious activity (not recommended)

Through program, you can change below registry settings:

Go to "HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\15.0\outlook\security"

Change below settings programatically:

PromptSimpleMAPISend  -- 2
PromptSimpleMAPINameResolve -- 2
PromptSimpleMAPIOpenMessage -- 2

By default when outlook is installed, the above values comes with zero value. What I do in my program is, I turn them to "2" programatically just before sending the email and turn them back to zero later point of time.




回答3:


See http://www.outlookcode.com/article.aspx?id=52 for the list of your options.

Essentially, you can either make sure that the antivirus app on your machine is up to date or use a library like Redemption to save the MSG files.



来源:https://stackoverflow.com/questions/43223101/outlook-email-to-pdf-security-prompt

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!