如何使用 COM 在 win32 应用程序中使用 Excel 2007 和 Excel 2003(Excel 图表)? 我在哪里可以看到这个问题的任何示例(对于 Visual Studio 2003)或手册?
最佳答案
使用 #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"
显然,您可能需要更改文件路径。您还可以使用类型库 ID,如果您处于多开发人员环境中,这可能是更好的解决方案。还有名称冲突等其他问题,您应该看看http://www.codeproject.com/KB/wtl/WTLExcel.aspx上的文章很好地总结了这一切。
现在您可以通过 _com_ptr<T>
使用 Excel , _bstr_t
, _variant_t
,以及来自 VC++ 的其他辅助类。
关于c++ - 如何使用 COM 从 win32 应用程序处理 Excel 2007 和 Excel 2003(Excel 图表)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4996960/