一开始使用vc6,在导入excel.exe后会自动生成excel.h和excel.cpp,然后project可以编译通过。
后来换到了vs2010,同样是导入excel.exe,但project无法通过编译,报了一堆错误,全都分布在excel.tlh和excel.thi里面,搞了一天最后终于解决了!但问题原因依然莫名奇妙!坑爹的MS啊!
PS:
vc中嵌入excel的链接
http://support.microsoft.com/kb/307473
http://support.microsoft.com/kb/311546/en-us
解决问题的链接
http://support.microsoft.com/kb/316587
编译时出现的出现:
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(550): error C3121: cannot change GUID for class 'IFilter'
1> c:\program files\microsoft sdks\windows\v7.0a\include\filter.h(183) : see declaration of 'IFilter'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(1471): error C2371: 'FontPtr' : redefinition; different basic types
1> d:\program files\microsoft visual studio 10.0\vc\include\comdef.h(314) : see declaration of 'FontPtr'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(1549): error C2786: 'BOOL (HDC,int,int,int,int)' : invalid operand for __uuidof
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(1549): error C2923: '_com_IIID' : 'Rectangle' is not a valid template type argument for parameter '_Interface'
1> c:\program files\microsoft sdks\windows\v7.0a\include\wingdi.h(3989) : see declaration of 'Rectangle'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(1549): error C3203: '_com_IIID' : unspecialized class template can't be used as a template argument for template parameter '_IIID', expected a real type
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(1549): error C2955: '_com_IIID' : use of class template requires template argument list
1> d:\program files\microsoft visual studio 10.0\vc\include\comip.h(40) : see declaration of '_com_IIID'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(1553): error C2786: 'BOOL (HDC,int,int,int,int,int,int,int,int)' : invalid operand for __uuidof
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(1553): error C2923: '_com_IIID' : 'Arc' is not a valid template type argument for parameter '_Interface'
1> c:\program files\microsoft sdks\windows\v7.0a\include\wingdi.h(3235) : see declaration of 'Arc'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(1553): error C3203: '_com_IIID' : unspecialized class template can't be used as a template argument for template parameter '_IIID', expected a real type
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(1553): error C2955: '_com_IIID' : use of class template requires template argument list
1> d:\program files\microsoft visual studio 10.0\vc\include\comip.h(40) : see declaration of '_com_IIID'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(1560): error C2371: 'PicturePtr' : redefinition; different basic types
1> d:\program files\microsoft visual studio 10.0\vc\include\comdef.h(328) : see declaration of 'PicturePtr'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2046): error C2504: '_IMsoDispObj' : base class undefined
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2088): error C2504: '_IMsoDispObj' : base class undefined
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2190): error C2504: '_IMsoDispObj' : base class undefined
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2209): error C2146: syntax error : missing ';' before identifier 'GetRGB'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2209): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2209): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2209): warning C4183: 'GetRGB': missing return type; assumed to be a member function returning 'int'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2211): error C2061: syntax error : identifier 'MsoRGBType'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2230): error C2061: syntax error : identifier 'MsoRGBType'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2232): error C2061: syntax error : identifier 'MsoRGBType'
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2251): error C2504: '_IMsoDispObj' : base class undefined
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2381): error C2504: '_IMsoDispObj' : base class undefined
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2420): error C2504: '_IMsoDispObj' : base class undefined
1>e:\code\visual studio 2010\projects\simapp\simapp\debug\excel.tlh(2503): error C2504: '_IMsoDispObj' : base class undefined
……………………………………
……………………………………
……………………………………
分享到:
相关推荐
而“mfc vs2019 excel”这个标签表明我们将讨论如何使用MFC在VS2019中操作Excel。 Excel是Microsoft Office套件中的电子表格应用程序,广泛用于数据处理和分析。通过MFC,我们可以编写C++代码来自动化Excel任务,...
以下将详细讲解如何通过MFC在VS2010中实现读写Excel文件的操作。 首先,我们需要了解基础的Excel文件格式。Excel文件通常以.xlsx或.xls为扩展名,它们是基于Open XML标准的。在MFC中,我们不会直接操作这些XML文件...
VS 使用 MFC 操作 EXCEL 新建编辑保存等操作 在本文档中,我们将学习如何使用 MFC 操作 EXCEL 文件,实现新建、编辑、保存等操作。我们将使用 Visual Studio 6.0 和 MFC 来实现这些操作。 Step 1: 建立一个自动化...
在C++环境中,使用Microsoft Foundation Class (MFC) 库并结合Visual Studio 2010来导出数据到Excel是一种常见的需求。本教程将详细解释如何实现这一过程,包括必要的步骤和代码示例。 首先,你需要创建一个C++工程...
在Microsoft Visual Studio 2019 (VS2019) 的MFC(Microsoft Foundation Classes)环境下,通过ODBC(Open Database Connectivity)实现对Excel表格的读写是常见的数据库操作需求。ODBC是一个标准的API,它允许应用...
在本文中,我们将深入探讨如何在MFC(Microsoft Foundation Classes)对话框中操作Excel,特别是在Visual Studio 2010环境下。MFC是Microsoft提供的一种C++库,用于简化Windows应用程序开发,而Excel则是广泛使用的...
而"mfc操作Word、Excel"这个主题则涉及到使用MFC来与Microsoft Office套件中的Word和Excel进行交互,实现自动化处理或自定义功能。 对于Word,MFC提供了一个名为COleDocument类的抽象基类,它是用来处理嵌入和链接...
而MFC操作Excel主要是指利用MFC库来与Microsoft Office的Excel组件进行交互,实现读写Excel文件、编辑单元格、执行公式等功能。 Excel 2007是Microsoft Office套件中的一个版本,它引入了新的XML格式(.xlsx),...
本示例中,我们关注的是如何利用MFC来操作Excel文件,这对于数据处理和报告生成等场景非常实用。 在Visual Studio 2005环境下,你可以使用MFC来创建一个应用程序,并集成对Excel文件的操作。关键在于,你需要引入...
在探讨MFC(Microsoft Foundation Classes)操作Excel边框这一主题时,我们首先需要理解MFC与Excel自动化的基本概念。MFC是微软为Windows平台提供的C++类库,它简化了Windows API的使用,使得开发人员能够更高效地...
在Microsoft Visual Studio 2010 (VS2010) 中,开发人员可以利用MFC(Microsoft Foundation Classes)库来实现对Excel文件的操作,包括读取、写入和创建Excel表格。MFC是Microsoft提供的一套C++类库,它简化了...
在本文中,我们将深入探讨如何...通过以上步骤,你可以在VS2010的MFC环境中实现Excel的导入和导出功能。这种功能对于需要处理大量表格数据的业务应用程序来说非常有用,可以帮助用户方便地在程序与Excel之间交换数据。
MFC提供了对Microsoft Office组件,如Excel,的接口,允许开发者通过编程方式操作Excel电子表格。本篇文章将深入探讨如何使用MFC来对Excel进行操作,包括修改单元格的格式、背景以及字体颜色。 首先,我们需要包含...
在VS 2010中创建一个新的MFC工程,命名为MfctoExc,选择基于对话框的应用程序,创建一个新的对话框类CMfctoExcDlg。 第二步:添加头文件 在stdafx.h文件中添加两个头文件:afxdb.h和odbcinst.h。afxdb.h头文件提供...
本主题涉及的是如何使用MFC来操作Excel电子表格。`excel.h`和`excel.cpp`是两个关键的源代码文件,它们包含了实现这个功能的具体代码。在这里,我们将深入探讨如何使用MFC与Excel API交互,以及这两个源文件可能包含...
在MFC中引入自动化操作,是指让Windows程序可以通过脚本或编程语言如VBScript、VBA等控制其他支持自动化技术的应用程序,例如Microsoft Excel。本文将详细介绍如何使用MFC自动化技术操作Excel文档,包括创建自动化...
在VS2010环境下,开发人员可以利用MFC库提供的便利,高效地完成对Excel工作簿的创建、编辑和格式化任务。以下是一些关键知识点的详细说明: 1. **MFC与COM组件**:MFC支持对Component Object Model (COM) 的接口...
### MFC vc6.0操作Excel #### 一、加载与配置 在开始使用MFC进行Excel操作之前,首先需要完成必要的配置步骤。 1. **创建MFC工程** 在Visual C++ 6.0中创建一个新的MFC工程。 2. **添加Automation支持** ...
综上所述,"mfc中excel"这一主题涵盖了许多MFC应用开发中的技术细节,从基础的文件操作到复杂的Excel对象模型交互,都是开发者需要掌握的关键技能。通过深入理解和实践,开发者可以有效地利用MFC和Excel来构建高效、...