你目前正处于脱机状态,正在等待 Internet 重新连接

信息: 为 Office 类型库可能会更改与新版本

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 224925
本文已归档。它按“原样”提供,并且不再更新。
概要
Microsoft Office 产品将从一个版本更改为下一步。 通常,Office 产品的类型库将具有相同的功能在早期的产品版本中存在的但某些功能可能需要添加的参数数目的内容。因此,如果您具有对对象库的早期版本编写的代码用于 Office 对象库使用类向导生成的包装类则可能会收到以下编译错误:
错误 C2660: (函数): 函数不采用 (n) 参数
更多信息
为了说明,已更改的一个此类函数是文档对象的 Microsoft Word 2000 Add 方法。如果已经用在类向导生成在 Microsoft Word 2000 类型库中的函数的类包装,并且您使用的 Microsoft Word 97 的有效代码,您将收到前面所述的编译错误。下面介绍如何更正此问题。请注意尽管这种情况说明适用于,特别是可以自动 Word 代码,可以将相同的信息应用于其他 Microsoft Office 应用程序。

在 Word 97 类库您可以使用下面的代码以使 Word 自动运行并启动一个新文档:
   _Application oApp;   Documents oDocs;   _Document oDoc;   COleVariant vtOptional((long)DISP_E_PARAMNOTFOUND,VT_ERROR),               vtTrue((short)TRUE),               vtFalse((short)FALSE);   // Create an instance of Word   if (!oApp.CreateDispatch("Word.Application"))    {      AfxMessageBox("Word failed to start!");      return;   } 	   // Add a new document and make Word visible   oDocs = oApp.GetDocuments();   oDoc = oDocs.Add(vtOptional,vtOptional);   oApp.SetVisible(TRUE);				
如果试图对 Word 2000 类型库中运行此代码,您将收到编译错误 C2660"添加: 函数不采用 2 参数"为下面的代码行:
     oDoc = oDocs.Add(vtOptional,vtOptional);				
要更正此问题,您可以执行以下步骤。
  1. 转到 项目工作环境 窗口的 ClassView 选项卡。
  2. 在您的工作区的 列表中双击要显示其成员的 文档 类别。
  3. 查找 添加成员 函数,您将看到需要四个参数。您的代码只将两个参数传递,因此您收到编译错误。
  4. 在 Microsoft Word 中的 Visual Basic 帮助,请参阅并找到该主题的添加方法的文档对象以确定哪种类型的数据,这些参数的使用和/或确定参数是否可选。在本例中这两个新的参数是可选的。
  5. 返回到您的项目并修改有问题要读取的代码行:
       oDoc = Docs.Add(vtOptional,vtOptional,vtOptional,vtOptional);					
  6. 重新编译这个项目。它现在应该在不使用错误的情况下进行编译。

自动执行 Office 应用程序的多个版本

如果打算编写 MFC 代码,将自动执行 Microsoft Office 应用程序的多个版本,您应使用此类向导从最早版本的类型库生成包装类。例如对于如果需要自动化客户端以支持 Microsoft Word 97 和 2000年使用为包装类的 Word 97 类型库。同样,您是否自动化客户端以支持 Microsoft 2000 和 2002年用于 Word 2000 类型库包装类。
参考
有关 Office 自动化的详细信息,请访问 Office 开发支持网站,网址:

警告:本文已自动翻译

属性

文章 ID:224925 - 上次审阅时间:02/23/2014 13:46:40 - 修订版本: 5.4

Microsoft Excel 2000 标准版, Microsoft Word 2002 标准版, Microsoft Excel 2002 标准版, Microsoft PowerPoint 2002 标准版, Microsoft Access 2002 标准版, Microsoft Word 2000 标准版, Microsoft PowerPoint 2000 标准版, Microsoft Access 2000 标准版, Microsoft Foundation Class Library 4.2

  • kbnosurvey kbarchive kbmt kbautomation kbinfo KB224925 KbMtzh
反馈