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

HOWTO:在 Visual C# .NET 中使用自动化获取和设置 Office 文档属性

针对 Office 2003 的支持已终止

Microsoft 已于 2014 年 4 月 8 日终止了针对 Office 2003 的支持。该更改已影响到您的软件更新和安全选项。 了解这一措施对于您的含义以及如何继续保持受保护状态。

本文的发布号曾为 CHS303296
本文已归档。它按“原样”提供,并且不再更新。
概要
本文阐述如何创建可操纵 Microsoft Word 文档属性的 Microsoft Visual C# .NET 自动化客户端。虽然该代码示例是专门针对 Word 的,但是在使 Microsoft Excel 和 Microsoft PowerPoint 自动运行时也可以使用这些技巧。
更多信息

为 Microsoft Word 创建自动化客户端

  1. 启动 Visual Studio .NET。
  2. 文件菜单上,单击新建,然后单击项目。从 Visual C# 项目类型中选择 Windows 应用程序。默认情况下会创建 Form1。
  3. 添加对 Microsoft Word 对象库的引用。为此,请按照下列步骤操作:
    1. 项目菜单上,单击添加引用
    2. COM 选项卡上,找到 Microsoft Word 对象库,然后单击选择

      注意:Microsoft Office 2003 包含主 Interop 程序集 (PIA)。 Microsoft Office XP 不包含 PIA,但您可以下载 PIA。 有关 Office XP PIA 的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
      328912 INFO:Microsoft Office XP PIA可供下载
    3. 添加引用对话框中单击确定以接受您的选择。如果系统提示您为选定的库生成包装,请单击
  4. 视图菜单上,选择工具箱以显示工具箱,然后向 Form1 添加一个按钮。
  5. 双击 Button1。出现该窗体的代码窗口。
  6. 在代码窗口中,将以下代码
    private void button1_Click(object sender, System.EventArgs e){}					
    替换为:
    private void button1_Click(object sender, System.EventArgs e){   Word.Application oWord;   Word._Document oDoc;   object oMissing = Missing.Value;   object oDocBuiltInProps;   object oDocCustomProps;			   //Create an instance of Microsoft Word and make it visible.   oWord = new Word.Application();   oWord.Visible = true;   //Create a new Document and get the BuiltInDocumentProperties collection.   oDoc = oWord.Documents.Add(ref oMissing, ref oMissing, ref oMissing,                               ref oMissing);   oDocBuiltInProps = oDoc.BuiltInDocumentProperties;   Type typeDocBuiltInProps = oDocBuiltInProps.GetType();   //Get the Author property and display it.   string strIndex = "Author";   string strValue;   object oDocAuthorProp = typeDocBuiltInProps.InvokeMember("Item",                               BindingFlags.Default |                               BindingFlags.GetProperty,                               null,oDocBuiltInProps,                               new object[] {strIndex} );   Type typeDocAuthorProp = oDocAuthorProp.GetType();   strValue = typeDocAuthorProp.InvokeMember("Value",                               BindingFlags.Default |                              BindingFlags.GetProperty,                              null,oDocAuthorProp,                              new object[] {} ).ToString();   MessageBox.Show( "The Author is: " + strValue,"Author" );   //Set the Subject property.   strIndex = "Subject";   strValue = "The Subject";   typeDocAuthorProp.InvokeMember("Item",                               BindingFlags.Default |                               BindingFlags.SetProperty,                               null,oDocBuiltInProps,                               new object[] {strIndex,strValue} );			   //Add a property/value pair to the CustomDocumentProperties collection.   oDocCustomProps = oDoc.CustomDocumentProperties;   Type typeDocCustomProps = oDocCustomProps.GetType();   strIndex = "Knowledge Base Article";   strValue = "Q303296";   object[] oArgs = {strIndex,false,                     MsoDocProperties.msoPropertyTypeString,                     strValue};   typeDocCustomProps.InvokeMember("Add",BindingFlags.Default |                               BindingFlags.InvokeMethod, null,                               oDocCustomProps, oArgs );   MessageBox.Show("Select \"Properties\" from the File menu "        + "to view the changes.\nSelect the Summary tab to view "        + "the Subject property and the Custom tab to view the Knowledge"           + "Base Article property.", "Check File Properties",        MessageBoxButtons.OK,MessageBoxIcon.Information);}					
  7. 滚动到代码窗口顶部,然后将以下行添加到 using 指令列表的末尾:
    using Microsoft.Office.Core;using Word = Microsoft.Office.Interop.Word;using System.Reflection;					
  8. 按 F5 键运行该应用程序。
注意DocumentPropertiesDocumentProperty 接口是晚期绑定接口。若要使用这些接口,必须像对待 IDispatch 接口那样对待它们。
参考
有关更多信息,请访问下面的 Microsoft Developer Network Web 站点:
Microsoft Office Development with Visual Studio(使用 Visual Studio 进行 Microsoft Office 开发)
http://msdn2.microsoft.com/en-us/library/aa188489(office.10).aspx
有关其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
303294HOWTO:Use Automation to Get and to Set Office Document Properties with Visual Basic .NET
xl2003 ppt2003 wd2003
属性

文章 ID:303296 - 上次审阅时间:12/06/2015 03:53:44 - 修订版本: 6.2

Microsoft Visual C# .NET 2003 标准版, Microsoft Visual C# .NET 2002 标准版, Microsoft Office Excel 2003, Microsoft Excel 2002 标准版, Microsoft Office PowerPoint 2003, Microsoft PowerPoint 2002 标准版, Microsoft Office Word 2003, Microsoft Word 2002 标准版

  • kbnosurvey kbarchive kbpia kbautomation kbhowto KB303296
反馈