如何从Wix#MSI安装程序注册VSTO加载项

wpf*_*abe 6 c# vsto wix ms-office

我已经构建了几个Office加载项(Excel,Word,PowerPoint和Outlook).我还编写了一个基于Wix#的MSI安装程序来安装这些加载项.我已经成功地做了一切,但现在我很困惑如何注册加载项.

通过VSTO在Windows资源管理器中双击附带的文件,可以交互方式执行此操作并进行注册.使用RegEdit挖掘显示rundll32.exe "C:\Program Files\Common Files\Microsoft Shared\VSTO\vstoee.dll",InstallVstoSolution %1被调用.

我发现的另一种方法是使用VSTOInstaller.exe%CommonProgramFiles%\Microsoft Shared为其提供正确命令行时找到的实用程序.

有没有人使用Wix或Wix#和VSTO加载项的经验?我应该编写一个自定义操作来执行此操作,还是需要执行特定的Wix操作?

Chr*_*ter 2

这取决于您的目标 Office 版本。我考虑调用 VSTOInstaller,但发现它仅为当前用户注册。下面是我写的一篇博客文章,其中包含其他博客的附加链接,帮助我解决了这一切。基本上,我能够对 vsto 配置文件的功能进行逆向工程,并且几乎全部在纯 MSI/WiX 中完成,并使用一些自定义操作来注册证书并为 Office 2010 生成随机数。

VSTO 经验教训 http://blog.deploymentengineering.com/2008/04/vsto-lessons-learned.html

编辑:那篇文章已经有几年了,Office 2007 现在“技术上”支持 HKLM AddIn 注册,就像 Office 2010 一样。此外,VSTOR 运行时也发生了变化,并且存在一些您可能必须满足的新位数问题。更新的文章可用:

Office 2010 位痛