首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用外接程序的Office菜单控件

使用外接程序的Office菜单控件
EN

Stack Overflow用户
提问于 2020-03-16 18:53:06
回答 2查看 45关注 0票数 0

我开发了一个插件来控制Office 2016中指定菜单和功能区控件的启用状态。

XML文件遵循以下格式:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8" ?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">

  <commands>    
    <command idMso="FileSendAsAttachment" enabled="false"/>
    <command idMso="FileEmailAsPdfEmailAttachment" enabled="false"/>
    <command idMso="FileEmailAsXpsEmailAttachment" enabled="false"/>
    <command idMso="FileInternetFax" enabled="false"/>
    ...

  </commands>  

  <ribbon>
  </ribbon>

  <backstage>    
  </backstage>

</customUI>

安装加载项后,根据策略,代理可能需要临时启用某些菜单。因此,我只修改了XML文件中控件的enable属性,并重新启动了Office,但所有菜单都已启用。(但是,当我将其替换为原始XML文件时,它再次被标记为禁用。)

我的插件是通过regsvr32.exe注册的,注册表是用HKCU编写的。(Windows是64位,Office 2016是32位。)

有没有人遇到过类似的问题?是什么导致了这种情况?

EN

回答 2

Stack Overflow用户

发布于 2020-03-17 12:50:39

安装插件后,我使用记事本修改了XML文件。我发现它是以utf-8编码的方式存储的。

我注意到格式被破坏了,因为BOM被插入到XML文件的第一个字节中。如果将文件另存为ANSI,则可以正常工作。

我希望你不要犯和我一样的错误!

票数 0
EN

Stack Overflow用户

发布于 2020-03-17 18:25:46

使用utf-16

代码语言:javascript
复制
  <commands>    
    <command idMso="FileSendAsAttachment" enabled="false"/>
    <command idMso="FileEmailAsPdfEmailAttachment" enabled="false"/>
    <command idMso="FileEmailAsXpsEmailAttachment" enabled="false"/>
    <command idMso="FileInternetFax" enabled="false"/>
    ...

  </commands>  

  <ribbon>
  </ribbon>

  <backstage>    
  </backstage>

</customUI>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60704594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档