(1)
Object missing =Type.Missing;//2;Object sFilePath = Path;
this.axWebBrowser1.Navigate2(ref sFilePath, ref missing, ref missing, ref missing, ref missing);
在装载完成事件NavigateComplete2里
wordApp =  e.pDisp.GetType().InvokeMember("Application", System.Reflection.BindingFlags.GetProperty, null, e.pDisp, null) as Word.Application;wordApp竟然什么也得不到!!!
(2)控件第一次装载word文档时候,有提示是否打开word文档,怎么解决?

解决方案 »

  1.   

    按制不要显示找开的提示应该可以做到,InvokeMember 是可以接程序参数的,具体也要查一下。
      

  2.   

    把wordApp 定义成全局静态变量,可以找到,并关闭
      

  3.   

    doc =  e.pDisp.GetType().InvokeMember("Document", System.Reflection.BindingFlags.GetProperty, null, e.pDisp, null) as Word. Document;
    doc我可以取得到.
    把wordApp 定义成全局静态变量,可以找到,并关闭
    //应该没关系,当时就取不到,我是想关闭word,可进程里有winword.exe.
    doc可以获得application吗???
      

  4.   

    axWebBrowser1.document应该就是Word. Document
    doc应该有application属性的,不过跨进程访问这个application估计不行
      

  5.   

    oleaut32
    GetActiveObject
    这个 api
      

  6.   

    上面的问题,我解决了
    AxWebBrowser1.ExecWB(SHDocVw.OLECMDID.OLECMDID_SAVE, SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER)
    这句代码,实现保存并关闭文件()
    包括进程,关键是SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER