C# 尽可能只加密邮件

C# 尽可能只加密邮件,c#,encryption,outlook,certificate,smime,C#,Encryption,Outlook,Certificate,Smime,只有在可能的情况下才能对邮件进行加密。 我写了一个自动转发邮件的插件。加载项在尝试加密无法加密的邮件时停止。例如,当收件人没有公钥时。 我试图捕获并处理抛出的异常,但在本例中并没有抛出异常。有什么想法吗? 这就是我所说的方法 private void signAndEncrypt(Outlook.MailItem mailItem) { const string PR_SECURITY_FLAGS = "http://schemas.microsoft.com/mapi

只有在可能的情况下才能对邮件进行加密。 我写了一个自动转发邮件的插件。加载项在尝试加密无法加密的邮件时停止。例如,当收件人没有公钥时。 我试图捕获并处理抛出的异常,但在本例中并没有抛出异常。有什么想法吗? 这就是我所说的方法

 private void signAndEncrypt(Outlook.MailItem mailItem)
    {
        const string PR_SECURITY_FLAGS = "http://schemas.microsoft.com/mapi/proptag/0x6E010003";

        Object ulFlags = 0x3;

        mailItem.PropertyAccessor.SetProperty(PR_SECURITY_FLAGS,ulFlags);
    }
这是错误的截图。它是德语的。

给我们看看您的代码。当然,对不起。我编辑了这篇文章:)确切的错误是什么?是哪个OOM方法导致的?这不是一个真正的错误。我在帖子中添加的方法将对邮件进行签名和加密。如果Outlook无法加密邮件,例如,当收件人没有公钥时,Outlook将发送一封无法加密邮件的邮件,并询问我是否希望未加密的邮件发送。只要我不对这个消息框做出反应,插件就会停止工作。