OLE 入门 - 啥是好的学习项目选择?
Posted
技术标签:
【中文标题】OLE 入门 - 啥是好的学习项目选择?【英文标题】:Getting Started with OLE - What's a good learning project choice?OLE 入门 - 什么是好的学习项目选择? 【发布时间】:2009-03-19 18:30:28 【问题描述】:我怀疑我很快将需要编写一个“集成”库,该库需要从 Java 调用 Windows 上的 OLE 对象。
我之前在 Windows 上完成过 Java 到 C/C++ 的集成(使用 C/C++ 和 JNI) - 所以我对这部分方程式并不陌生。
但是;我想尝试围绕 OLE 对象编写一个 C/C++ 包装器,以便为项目的这一部分提供测试。
所以,一些问题:
我可以用 VS C++ Express Edition 做 OLE。我相信答案是,“是的,但是你没有 MFC,所以你不能调用 Microsoft OLE 对象(例如 Excel、Word 等)”
如果我对 #1 的假设是正确的,我需要一个“测试”应用程序来提供我可以调用的 OLE 对象 - 有什么建议可以作为好的做法?
【问题讨论】:
【参考方案1】:是的,您可以使用 VC++ Express 进行 OLE,我建议安装 Windows Platform SDK。您不需要 MFC 即可使用办公应用程序。使用 VC++ Express 2005,您可以安装包含 ATL 的旧版 Platform SDK 2003 R1,它是 COM 功能的便捷包装器。如果您无法安装它,您可以创建自己的包装,请参阅这篇更高级的文章COM in Plain C。
一个众所周知的提供 COM 对象的应用程序是 Internet Explorer,还有 Windows Media Player,并且可以通过 COM 访问 Flash。
你也可以看看Jacob“The JACOB Project: A JAva-COM Bridge”
您可以认为 COM 是构建 OLE 功能的层。
【讨论】:
【参考方案2】:不清楚您是指实际的 OLE(具有就地编辑的嵌入/链接文档)还是只是自动化(调用 Office 应用程序的编程模型)。
无论哪种方式,您都可以使用 Visual C++ 速成版执行 OLE,只是不会获得 MFC 的(有些可疑的)优势来帮助您执行此操作。你也不会有 ATL,它没有 MFC 糟糕,但也没有那么好。
OLE 的问题在于,除非您有某种库可以作为您工作的基础,否则您将不得不编写大量样板代码。你需要参考一些ancient texts。
作为一个测试应用,为什么不用Word、Excel等呢?
【讨论】:
以上是关于OLE 入门 - 啥是好的学习项目选择?的主要内容,如果未能解决你的问题,请参考以下文章
使用 TestFlight 进行内部测试时,啥是好的 iOS 应用版本控制策略?
在处理 Proguard、MultiDex、测试和产品风味时,啥是好的策略?