【发布时间】:2011-06-27 04:28:24
【问题描述】:
如何使用 COM 从 win32 应用程序处理 Excel 2007 和 Excel 2003(Excel 图表)? 我在哪里可以看到这个问题的任何示例(对于 Visual Studio 2003)或手册?
【问题讨论】:
标签: c++ visual-c++ com atl charts
如何使用 COM 从 win32 应用程序处理 Excel 2007 和 Excel 2003(Excel 图表)? 我在哪里可以看到这个问题的任何示例(对于 Visual Studio 2003)或手册?
【问题讨论】:
标签: c++ visual-c++ com atl charts
使用#import,您可以让VC++ 生成大量智能指针代码用于与COM 交互。这是我从 C++ 实现 Office 自动化的首选方法。将此添加到源文件的顶部以生成文件并包含适当的生成文件:
#import "C:\\Program Files\\Common Files\\Microsoft Shared\\OFFICE11\\MSO.DLL"
#import "C:\\Program Files\\Microsoft Office\\OFFICE11\\EXCEL.EXE"
显然您可能需要更改文件路径。您还可以使用 typelib ID,如果您处于多开发人员环境中,这可能是一个更好的解决方案。还有名字冲突等其他问题,你应该看看http://www.codeproject.com/KB/wtl/WTLExcel.aspx的文章,它总结得很好。
现在您可以通过_com_ptr<T>、_bstr_t、_variant_t 和其他来自 VC++ 的帮助程序类来使用 Excel。
【讨论】: