几个月前,我为一家小公司整理了一个简单的概念验证软件,并提出了一个文档编辑工具的想法。该公司希望将此工具集成到Microsoft Word中,这是可以理解的,以最大限度地提高其对普通用户的可访问性。
我基本上用C#项目编写了包含所有核心功能的底层库,然后使用VSTO让它在Word中运行。这真的感觉像是一个胶带解决方案;但是,我(实际上)没有经验开发与MS Office集成的工具,无论如何它只是一个概念证明。
嗯,公司对我的整体工作非常满意,他们希望从“概念验证”转变为真正的交易。幸运的是,正如我所说,核心功能就在那里,只需要稍微调整和增强。我主要关注的是如何将一个与MS Word集成的应用程序组合在一起,以一种干净,优雅的方式,并且可以根据普通用户的期望轻松部署(即,只需运行安装程序,瞧,它是在Word中。)
我似乎记得在某个地方读过没有人使用VSTO进行真正的专业项目。这是真的?假?有哪些替代方案?在开始解决这个MS Word集成问题之前,我应该注意哪些提示和陷阱?
答案 0 :(得分:4)
部署VSTO解决方案的主要问题之一是总部署规模。
这可以很容易地将您简单有效的解决方案变成40-50MB,供有人下载。企业环境在某种程度上更容易部署,但商业级软件更难实现。
现在在VSTO 2010中部分解决了这种情况,其中“只有您实际使用的组件”是主Interop部署。这一点和其他使部署更容易的事情,例如一键式,当然是考虑VSTO 2010的一个原因。Channel 9上有一些很好的介绍。
使用VSTO的商业产品并非闻所未闻 - StoryboarderPro是用VSTO编写的,在电子学习行业很受欢迎。
答案 1 :(得分:2)
我还记得读过VSTO不适合商业软件。内部软件是另一回事,它终于取得了进展(至少在我的组织中)。
我认为最大的争论与旧版Office有关。 VSTO仅支持Office 2003.此外,过去分发VSTO所需的依赖性一直很痛苦,尽管随着新Windows版本的推移,这会逐渐减少。
例如,我的最新项目需要以下内容(假设,但已安装验证.Net framework 3.5):