2010-12-22 122 views
1

当我安装基于VSTO的PowerPoint插件时,它总是显示在“禁用”部分,每次打开PowerPoint时 - 我必须手动启用它。默认启用PowerPoint VSTO加载项

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

回答

1

当您设置一个Office(VSTO)插件启用(在办公室),它改变了注册表项:

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" 
+0

有启动代码中的一个问题之前,它坠毁。但是,即使经过几次迭代(看似有效的代码),它也不会自动加载。这可能与第一次坠机有关吗? – JewelThief 2010-12-22 06:56:53