如何解决通过 c# 更改 Outlook 个人信纸
我刚刚开始学习如何使用 Visual Studio 为 Outlook 编写加载项。我很难找到阅读 VSTO 的资源。如何修改 Outlook 个人信纸下“新邮件”和“回复或转发邮件”的默认字体?
修改了我的帖子以包含解决方案:
我正在使用此链接 (https://pcloadletter.co.uk/2010/05/19/outlook-default-font-and-signature/) 中的代码并转换为 c#。对于那些试图做同样事情的人,我是这样做的。
private void SetFont()
{
RegistryKey key = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Microsoft\Office\16.0\Common\MailSettings",true);
// set the font in Outlook and then export it from the registry. Use that value for our code.
string ComposeFontSimple = @"3c,00,1f,f8,c8,ff,dd,22,41,72,69,61,6c,00";
byte[] arrComposeFontSimpleBin = ArrayHexToDec(ComposeFontSimple.Split(','));
key.SetValue("ComposeFontSimple",arrComposeFontSimpleBin,RegistryValueKind.Binary);
}
public static byte[] ArrayHexToDec(string[] arrHex)
{
byte[] arrDec = new byte[arrHex.GetUpperBound(0)];
for (int i = 0; i < arrHex.GetUpperBound(0); i++)
{
if (arrHex[i] == "00")
{
arrDec[i] = 0;
}
else
{
arrDec[i] = byte.Parse(arrHex[i],System.Globalization.NumberStyles.HexNumber);
}
}
return arrDec;
}
解决方法
设置存储在 HKCU\Software\Microsoft\Office\%s.0\Common\MailSetting
秒。
您想要的值是 ReplyFontSimple
- 字体大小从偏移 12 开始,名称从偏移 0x1A(0x0 终止的字符串)开始。
Outlook 将其设置保留在 Windows 注册表中。尝试使用 Process Monitor 来跟踪 Outlook 保存其设置的确切位置。
如果我们谈论在运行时更改 Outlook 邮件项目,可以使用三种不同的方式修改邮件正文:
- Body。
- HTMLBody。
- Word 编辑器。 Inspector 类的 WordEditor 属性返回表示消息正文的 Word 文档实例。
有关详细信息,请参阅 Chapter 17: Working with Item Bodies。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。