2017-04-05 1 views
2

J'ai une tâche dont j'ai besoin pour créer un programme qui convertit Outlook en pdf.Outlook email à l'invite de sécurité pdf

ceci est mon 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); 
          } 
         } 
        } 

       } 

le code fonctionne, mais les perspectives contient des milliers d'e-mails. Les perspectives invite un message toutes les 10 minutes semblable à la capture d'écran ci-dessous

enter image description here

est-il un moyen d'éviter le message? Programatically ou un réglage fera l'affaire?

Répondre

0

Fondamentalement, il n'est pas lié à la programmation au lieu de cela est lié les paramètres de sécurité de perspective.

Pour chaque version de Outlook, vous pouvez trouver les paramètres de cette fenêtre, suivez les instructions au this blog.

0

Vous pouvez effectuer un réglage dans votre look out.

mine sont les perspectives 2013.

File->options : ouvre une fenêtre

Dans la fenêtre, sélectionnez Trust Center

Vous pouvez voir un bouton Trust center Settings

Options de fenêtre change. Select Programmatic access

décochez le bouton radio Never warn me about suspicious activity (not recommended)

Par programme, vous pouvez modifier ci-dessous les paramètres du Registre:

Aller à "HKEY_CURRENT_USER \ Software \ Policies \ Microsoft \ Office \ 15.0 \ Outlook \ security"

Modifier les paramètres ci-dessous programatically:

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

Par défaut, lorsque Outlook est installé, les valeurs ci-dessus ont une valeur nulle. Ce que je fais dans mon programme est, je les tourne à "2" par programmation juste avant d'envoyer l'e-mail et de les remettre à zéro plus tard.