我已经开发了一个简单的任务窗格加载项来测试西里尔字符,但是当使用body.getAsync()时,西里尔字符似乎编码不正确。
是否有从电子邮件正文中获取Cyrillic html的解决方法?这是我正在使用的代码:
var message = Office.context.mailbox.item;
message.body.getAsync(Office.CoercionType.Html, function (result) {
if (result.status === Office.AsyncResultStatus.Succeeded) {
$("#gridResult").html(result.value);
}
});
我通过Visual Studio调试器运行代码,并在调用result.value
之前在.html()
上设置断点。损坏的值是可见的。使用F12开发人员工具附加到IE Process时会发生同样的事情:
答案 0 :(得分:2)
这被发现是一个错误。它将在即将发布的C2R版本更新中修复。暂时,如果构建是在16.0.7117.1000之后,则应该修复它。此内部版本号不是将要出现的确切数字,但是当更新发布时,如果该数字是在该构建之后,则修复应该在。
我无法确认此修复程序会在实际修补程序发布之前完成。
MSI Outlook 2016和MSI Outlook 2013的修复程序将在之后发布。一旦计划发布这些更新,我将使用KB&和补丁更新。
答案 1 :(得分:1)
感谢您报告此问题。这是Outlook桌面的回归,修复将在大约两个月内到达客户端。 与此同时,解决方法是使用Office.CoercionType.Text
调用APIvar message = Office.context.mailbox.item;
message.body.getAsync(Office.CoercionType.Text, function (result) {
if (result.status === Office.AsyncResultStatus.Succeeded) {
$("#gridResult").html(result.value);
}
});
或者在OWA(Outlook on Web)中使用你的插件。