默认情况下启用PowerPoint VSTO加载项

时间:2010-12-22 06:00:59

标签: c# .net vsto powerpoint

当我安装基于VSTO的PowerPoint插件时,它总是出现在“禁用”部分,每次我打开PowerPoint时 - 我都必须手动启用它。

如何以编程方式更改此行为,以便默认情况下始终启用插件。

1 个答案:

答案 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"