【发布时间】:2019-09-05 15:04:38
【问题描述】:
我正在开发一个 MS Word 插件。我已经在 Windows 和 Mac 上测试过它,它对我来说很好用。 Microsoft 需要对加载项进行自己的验证,以确保它们正常工作,而我的加载项对它们来说会失败,即使它适用于我使用相同版本的 Windows 和 Word。
我与 Microsoft Validation 团队通了电话,他们唯一的建议是我在 Stack Overflow 上发布一个问题,所以就这样吧!
这是适用于我但不适用于 MS 验证团队的 Windows 和 Word 版本:
- Windows 10 专业版操作系统内部版本 18362.295
- Word 2016(尤其是 1908 版)
出于调试目的,我向 Microsoft 提交了一个非常简单的加载项。这个简单的插件只有一个按钮,可以在用户的默认浏览器中打开一个网页。
这是清单的相关部分:
<Control xsi:type="Button" id="PB.Home.Button">
<Label resid="PB.Home.Button.Label"/>
<Supertip>
<Title resid="PB.Home.Button.Title"/>
<Description resid="PB.Home.Button.Desc"/>
</Supertip>
<Icon> ... </Icon>
<Action xsi:type="ExecuteFunction">
<FunctionName>navigateToWebPage</FunctionName>
</Action>
</Control>
这是FunctionFile.html的全部内容:
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js" ></script>
<script src="https://appsforoffice.microsoft.com/lib/1/hosted/Office.js" type="text/javascript"></script>
<script src="FunctionFile.js" type="text/javascript"></script>
</head>
<body>
</body>
</html>
这是FunctionFile.js的全部内容:
(function () {
Office.initialize = function (reason) {};
})();
function navigateToWebPage(event) {
window.open('https://www.example.com', '_blank');
event.completed();
}
在我的计算机上,当单击按钮时,会打开一个浏览器选项卡和网页,但对于 MS 验证团队,此消息会显示在 Word 窗口底部的工具栏中
但没有其他事情发生。
“Patent Bots GCP 正在处理您的审查员统计”消息是由 Word 生成的,而不是由我的插件生成的。“Patent Bots GCP”是插件的名称,“审查员统计”是按钮标签(一个清单中的短字符串)。
关于如何找出 Microsoft 验证团队失败的原因有什么建议吗?除了我在此处包含的内容之外,他们无法提供有关该错误的任何详细信息。
我希望 Microsoft 工程师看到这一点并能够提供帮助。
=====
可能是弹出窗口阻止程序问题?看到这个:https://www.tek-tips.com/viewthread.cfm?qid=949178
【问题讨论】:
-
您使用的 Windows 10 的完整内部版本号是多少?
-
@RickKirkham,Windows 10 专业版操作系统内部版本 18362.295。感谢您的跟进。
-
MS 团队收到的消息中的措辞是否来自您的加载项? (“专利机器人……”)
-
@RickKirkham,该消息是由 Word(或者可能是 Office.js)生成的,而不是由我的插件生成的。请参阅上面编辑过的问题中的详细信息。
-
可能是异步的问题。也许时间在您的计算机上很幸运,但
event.completed在窗口完成打开之前在验证团队的计算机上运行。搜索“is JavaScript window.open async”,我发现了一些有趣的资源。例如:stackoverflow.com/questions/19026162/….