几年前,我为Office 2003(Word,Excel和PowerPoint)做了一些非常严肃的Office加载项开发。我使用Visual Studio 2003在C#中创建了一些共享的COM加载项。当时,我查看了VSTO,但我认为原因是我无法完全记住它不适合我的需求。
我的加载项现在应该升级,不再需要支持Office 2003 - 尽管它们仍然需要支持Office 2007,而不仅仅是2010。
我知道事情已经发生了很大变化,Visual Studio 2010对Office开发有了更好的支持。我想确定是否应该使用VSTO重新实现我的加载项,或者继续使用共享的COM加载项路由。
如果有人知道每种方法的优缺点(超出营销宣传),我很乐意听到它。
我第一次发现非常令人沮丧的事情(不使用VSTO,但无论如何都可能适用):
- 需要明确管理COM引用(并调用 ReleaseComObject无处不在)
- 需要使用COM填充程序来使安全模型正常工作
- 视觉工作室安装项目只是平淡无效;我结束了 建立我自己的基于MSI的安装程序
- 缺乏文件,特别是上述所有文件;我消费 几周的反复试验和搜索随机博客; MS提供的 示例代码完全忽略了所有这些现实问题
还值得一提的是,在插件出现之前尽量减少需要安装的内容非常重要。我认为让我退出VSTO的一件事就是需要部署其他东西(尽管我从未走过那条路线,我不知道这个问题是否合理)。而且我真的希望能够在标准的Windows 7(或Vista)版本上进行部署而无需首先安装(例如).NET 4。
答案 0 :(得分:1)
部分答案但是太长而无法发表评论:
我可以评论的部分:
您还没有指定用于创建这些com插件的内容(我的猜测是c ++或vb6),我无法分辨它们有多大以及它们需要多少大修所以现在提供建议是不可能的是时候做出改变了。移动到c#的区域之一肯定会更清洁,更好的是与丝带相关的任何东西。但我再也无法估计这对你有多重要。