当我安装基于VSTO的PowerPoint插件时,它总是出现在“禁用”部分,每次我打开PowerPoint时 - 我都必须手动启用它。
如何以编程方式更改此行为,以便默认情况下始终启用插件。
答案 0 :(得分:1)
当您设置要启用的Office(VSTO)插件时(在Office中),它会更改注册表项:
HKLM\SOFTWARE\Microsoft\Office\PowerPoint\Addins\YourAssemblyName "LoadBehavior"
LoadBehavior值必须设置为3才能加载(即启用)(2表示禁用)
Office程序通常只在出现问题时将此LoadBehavior设置更改回2(例如启动事件代码中的异常,找不到程序集等) 所以你需要弄清楚发生了什么(调试你的启动或做一些日志记录)
在任何情况下,要以编程方式设置此项,您需要编写一些代码来更改此注册表设置。
我使用NSIS在安装程序中执行此操作,例如:
StrCpy $0 "SOFTWARE\Microsoft\Office\PowerPoint\Addins\YourAssemblyName"
WriteRegStr HKLM $0 "Description" "Product Name"
WriteRegStr HKLM $0 "FriendlyName" "Product Name"
WriteRegDWORD HKLM $0 "LoadBehavior" 3
WriteRegStr HKLM $0 "Manifest" "$INSTDIR\YourAssemblyName.vsto|vstolocal"