我最近在这里发布了一个关于读取Word文件的问题:这里。
应用程序运行正常,但是我收到了以下警告消息:
警告:方法'Microsoft.Office.Interop.Word._Document.Close(ref object, ref object, ref object)'和非方法'Microsoft.Office.Interop.Word.DocumentEvents2_Event.Close'之间存在歧义。使用方法组。
由于某些命名空间的模糊性,我想知道如何解决此问题。虽然应用程序可以运行,但我想尽量减少警告/错误。
下面是该类的代码;它所涉及的行是以下两行:
整段代码:
应用程序运行正常,但是我收到了以下警告消息:
警告:方法'Microsoft.Office.Interop.Word._Document.Close(ref object, ref object, ref object)'和非方法'Microsoft.Office.Interop.Word.DocumentEvents2_Event.Close'之间存在歧义。使用方法组。
由于某些命名空间的模糊性,我想知道如何解决此问题。虽然应用程序可以运行,但我想尽量减少警告/错误。
下面是该类的代码;它所涉及的行是以下两行:
docs.Close(ref nullobject, ref nullobject, ref nullobject);
wordObject.Quit(ref nullobject, ref nullobject, ref nullobject);
整段代码:
namespace Wizard.Classes
{
class MSWordReader
{
public void read(String filename)
{
String buffer = "";
try
{
Microsoft.Office.Interop.Word.Application wordObject = new
Microsoft.Office.Interop.Word.Application();
object file = filename; //this is the path
object nullobject = Type.Missing;
object visible = false;
object readonlyp = true;
object addtorecent = false; //add to words recent filelist
Microsoft.Office.Interop.Word.Document docs = wordObject.Documents.Open
(ref file,ref nullobject, ref readonlyp, ref addtorecent,
ref nullobject, ref nullobject, ref nullobject, ref nullobject,
ref nullobject, ref nullobject, ref nullobject, ref visible,
ref nullobject, ref nullobject, ref nullobject, ref nullobject
);
docs.ActiveWindow.Selection.WholeStory();
docs.ActiveWindow.Selection.Copy();
IDataObject data = Clipboard.GetDataObject();
buffer = data.GetData(DataFormats.Text).ToString();
docs.Close(ref nullobject, ref nullobject, ref nullobject);
wordObject.Quit(ref nullobject, ref nullobject, ref nullobject);
MessageBox.Show(buffer);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}