WD1X.COM - 问答一下,轻松解决,电脑应用解决专家
主板显卡CPU内存显示器
硬盘维修显卡维修显示器维修
注册表系统命令DOS命令Win8
存储光存储鼠标键盘
内存维修打印机维修
WinXPWin7Win11Linux
硬件综合机箱电源散热器手机数码
主板维修CPU维修键盘鼠标维修
Word教程Excel教程PowerPointWPS
网络工具系统工具图像工具
数据库javascript服务器
PHP教程CSS教程XML教程

获取Word文档的作者和主题

更新时间:2014-04-28 11:44 作者:佚名点击:

当然要先添加对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);   
            }

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
你可能感兴趣的内容