当然要先添加对Word的组件的引用,添加命名空间的引用,代码:
Word.Application oWord; Word._Document oDoc; object oMissing = Missing.Value; object docBuiltInProps; object Source = @"DocPath"; object Unknown =Type.Missing; oWord = new Word.Application(); try { oDoc = oWord.Documents.Open(ref Source,ref Unknown, ref Unknown,ref Unknown,ref Unknown, ref Unknown,ref Unknown,ref Unknown, ref Unknown,ref Unknown,ref Unknown, ref Unknown ); docBuiltInProps = oDoc.BuiltInDocumentProperties; Type typeDocBuiltInProps = docBuiltInProps.GetType(); //获取作者 string index = "Author"; string propsValue; object docAuthor = typeDocBuiltInProps.InvokeMember("Item", BindingFlags.Default | BindingFlags.GetProperty, null,docBuiltInProps, new object[] {index} ); Type typeDocAuthorProp = docAuthor.GetType(); propsValue = typeDocAuthorProp.InvokeMember("Value", BindingFlags.Default | BindingFlags.GetProperty, null,docAuthor, new object[] {} ).ToString(); MessageBox.Show( propsValue,"Author" ); //获取主题 index = "Subject"; propsValue = "The Subject"; object docSubjectProp = typeDocBuiltInProps.InvokeMember("Item", BindingFlags.Default | BindingFlags.GetProperty, null,docBuiltInProps, new object[] {index} ); Type typeDocSubjectProp = docSubjectProp.GetType(); propsValue = typeDocSubjectProp.InvokeMember("Value", BindingFlags.Default |BindingFlags.GetProperty, null,docSubjectProp, new object[] {} ).ToString(); MessageBox.Show( propsValue,"Subject" ); } finally { //关闭word进程 object save = false; oWord.Quit(ref save,ref Unknown,ref Unknown); System.Runtime.InteropServices.Marshal.ReleaseComObject(oWord); }最近没作项目的开发,没什么好东西可以拿出手
这个就献丑了