关于开发专业 MS Word 插件的有用建议
几个月前,我为一家小公司制作了一个简单的概念验证软件,并提出了文档编辑工具的想法。可以理解的是,该公司希望将该工具集成到 Microsoft Word 中,以最大限度地提高普通用户的可访问性。
我基本上将具有所有核心功能的底层库编写为 C# 项目,然后使用 VSTO 让它在 Word 中运行。真的,感觉有点像管道胶带解决方案;但是,我(实际上)在开发与 MS Office 集成的工具方面的经验为零,而且无论如何,这只是一个概念验证。
嗯,该公司对我的整体工作非常满意,他们希望从“概念验证”转向真正的交易。幸运的是,正如我所说,核心功能已经全部存在,只需要进行一些调整和增强即可。我主要关心的是弄清楚如何构建一个应用程序,以干净和完美的方式与 MS Word 集成,并且可以根据普通用户的期望轻松部署(即,只需运行一个安装程序,瞧,它就是Word 中有)。
我似乎记得在某处读到没有人将 VSTO 用于真正的专业项目。这是真的吗?错误的?有哪些替代方案?在开始处理 MS Word 集成问题之前,我应该注意哪些提示和陷阱?
A few months back I put together a simple proof-of-concept piece of software for a small firm with an idea for a document editing tool. The company wanted this tool to be integrated into Microsoft Word, understandably, to maximize its accessibility to the average user.
I essentially wrote the underlying library with all of the core functionality as a C# project, and then used VSTO to get it running inside of Word. It felt like a bit of a duct tape solution, really; but then, I have (practically) zero experience developing tools for integration with MS Office, and it was only a proof of concept anyway.
Well, the firm was quite pleased with my work overall, and they're looking to move from "proof of concept" to the real deal. Fortunately, as I said, the core functionality is all there and will only need to be somewhat tweaked and enhanced. My main concern is figuring out how to put together an application that will integrate with MS Word in a clean and polished way, and which can be deployed easily in accordance with a regular user's expectations (i.e., simply running an install program and voila, it's there in Word).
I seem to remember reading somewhere that nobody uses VSTO for real professional projects. Is this true? False? What are the alternatives? And what are the tips and gotchas that I should be aware of before getting started on this issue of MS Word integration?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
VSTO 解决方案部署的主要问题之一是总部署规模。您拥有
项目
这可以很容易地将您简单而高效的解决方案变成 40-50MB 供某人下载。企业环境更容易部署,但商业级软件则更难部署。
现在,VSTO 2010 中通过一种“仅实际使用的组件”主互操作部署部分解决了这个问题。此功能以及其他使部署更容易的功能(例如“一键式”)无疑是考虑 VSTO 2010 的一个原因。频道 9。
使用 VSTO 的商业产品并非闻所未闻 - StoryboarderPro 是用 VSTO 编写的,在电子学习行业很受欢迎。
One of the main issues with deployment of VSTO solutions has been the total deployment size. You have
project
This could very easily turn your simple and efficient solution into 40-50MB for someone to have to download. Corporate enviroments are somewhat easier to deploy in, but commercial grade software is tougher.
This is partially solved now in VSTO 2010 with a sort of "only the components you're actually using" Primary Interop deployment. This and other things to make deployment easier, such as One-Click, are certainly a reason to consider VSTO 2010. There are some good intros to this on Channel 9.
Commercial products using VSTO are not unheard of though - StoryboarderPro was written in VSTO and is popular in the eLearning industry.
我还记得读到过 VSTO 对于商业软件来说并不理想。内部软件是另一回事,它终于取得了进展(至少在我的组织中)。
我认为最大的争论与 Office 的旧版本有关。 VSTO 仅支持早至 Office 2003。此外,VSTO 所需的依赖项一直令人痛苦过去分布,尽管随着新的 Windows 版本的出现,这种情况会逐渐减少。
例如,我的最新项目需要以下内容(假设但验证已安装 .Net Framework 3.5):
I also remember reading that VSTO was not ideal for commercial software. Internal software is another matter and it has finally made inroads (at least in my organization).
I believe the biggest argument has to do with legacy versions of Office. VSTO only supports as far back as Office 2003. In addition, VSTO required dependencies have been painful to distribute in the past, although this lessens over time with new Windows releases.
For example, my latest project requires the following (assuming, but verifying .Net framework 3.5 is installed):