Outlook下实现自动签名的方式
网上找到一篇资料是在outlook里用vba实现的,但是这样实现的方式由于数字认证的问题不便于部署
在此介绍一种C#下实现的方式,目前确定的outlook版本为2007以上,2003的未测试
通过vs2012新建office->2010->outlook2010外接程序 的解决方案
步骤如下:
源代码如下:
using System;
using Office = Microsoft.Office.Core;
using Microsoft.Office.Interop.Outlook;
namespace AutoSigAddIn
{
public partial class ThisAddIn
{
private Inspectors _inspectors;
private MailItem _mailItem;
///
///
///
private void ThisAddIn_Startup(object sender, EventArgs e)
{
Application.Startup+=Application_Startup;
}
///
private void Application_Startup()
{
_inspectors=Application.Inspectors;
_inspectors.NewInspector += inspectors_NewInspector;
}
void inspectors_NewInspector(Inspector inspector)
{
_mailItem = inspector.CurrentItem;
//当主题不为空并且是 RE: 或 FW: 开头的,不添加签名
if (!string.IsNullOrEmpty(_mailItem.Subject)
&&(_mailItem.Subject.ToUpper().StartsWith("RE:")
||_mailItem.Subject.ToUpper().StartsWith("FW:")))
{
return;
}
//设置签名
_mailItem.HTMLBody += @"
自动签名
";private void ThisAddIn_Shutdown(object sender, EventArgs e)
{
}
#region VSTO 生成的代码
///
private void InternalStartup()
{
Startup += ThisAddIn_Startup;
Shutdown += ThisAddIn_Shutdown;
}
#endregion
}
}
手机扫一扫
移动阅读更方便
你可能感兴趣的文章