添加对Office库失败的引用:类型或命名空间名称未找到Word

时间:2010-05-31 15:39:53

标签: c# .net ms-office office-interop

我正在尝试使用sample code here

我转到“添加引用”对话框并添加了“Microsoft Word 12库”,但它没有出现在解决方案资源管理器中。我还补充说:using Microsoft.Office;

尝试声明“Word”对象时收到以下错误消息。

  

错误1:找不到类型或命名空间名称“Word”(您是否缺少using指令或程序集引用?)

有关如何正确引用Word库的任何建议吗?

7 个答案:

答案 0 :(得分:3)

编辑:更改为不使用剪贴板

using Microsoft.Office.Interop.Word;

public string Test(string path)
{
    Microsoft.Office.Interop.Word.Application wordApp = new Microsoft.Office.Interop.Word.Application();
    object file = path;
    object nullobj = System.Reflection.Missing.Value;

    Document doc = wordApp.Documents.Open(ref file, ref nullobj, ref nullobj,
                                           ref nullobj, ref nullobj, ref nullobj,
                                           ref nullobj, ref nullobj, ref nullobj,
                                           ref nullobj, ref nullobj, ref nullobj);

    string result = doc.Content.Text.Trim();
    doc.Close();
    return result;
}

答案 1 :(得分:1)

您应该使用Microsoft.Office.Interop.Word程序集和指令
using Microsoft.Office.Interop.Word;

答案 2 :(得分:1)

我添加了微软word对象库的参考,并在顶部写了using Microsoft.Office.Interop.Word;。但是代码没有用。我正在使用此链接中提供的代码:http://support.microsoft.com/kb/316384

然后,我在代码中用“Microsoft.Office.Interop.Word”更改了所有“Word”,并且它有效。

答案 3 :(得分:0)

您安装了哪个版本的办公室?我的猜测是不同的。您可以在此处查看官方名称到版本的映射:http://en.wikipedia.org/wiki/Microsoft_Word#Versions

答案 4 :(得分:0)

您正在使用的技术要求您在开发人员计算机上以及您要部署的任何计算机上安装特定版本的Word。

自Office 2007起,Office文档使用Open XML格式存储。可以使用.NET Framework中的Packaging和XML API读取和修改这些文档。您还可以使用Open XML SDK在Packaging和XML API之上为您提供更高级别的抽象层。使用此技术没有安装Word用于开发或生产用途。

有关使用Open XML的更多信息,请访问以下链接:

Open XML Developer

Open XML SDK 2.0 for Microsoft Office

答案 5 :(得分:0)

  1. 确保已添加对Microsoft.Office.Interop.Word的引用。您可以通过右键单击引用添加引用,选择“添加引用”,然后在“.NET”选项卡下查找Microsoft.Office.Interop.Word

  2. 在程序文件中插入:

    使用Word = Microsoft.Office.Interop.Word;

    注意“Word =”,这是解决痛苦的秘诀。你必须安装Word,顺便说一句。

    当我不确定用户是否安装了Word时,我就是这样做的:

  3. // 1.此代码创建单词application,这是操作Word文件的第一个必需步骤

    Word.ApplicationClass wordApplication;
    try { wordApplication = new Word.ApplicationClass(); }
    catch (Exception e) { MessageBox.Show("ERROR! Do you have MS Word installed? " + e.Message.ToString()); }
    

    Source

答案 6 :(得分:0)

使用此

using Excel = Microsoft.Office.Interop.Excel;

而不是

using Microsoft.Office.Interop.Word;