日期:2014-05-19  浏览次数:20730 次

我用axWebBrowser显示word文档,请问如何关闭word文档????
(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文档,怎么解决?

------解决方案--------------------
把wordApp 定义成全局静态变量,可以找到,并关闭
------解决方案--------------------
axWebBrowser1.document应该就是Word. Document
doc应该有application属性的,不过跨进程访问这个application估计不行
------解决方案--------------------
oleaut32
GetActiveObject
这个 api
------解决方案--------------------
上面的问题,我解决了
AxWebBrowser1.ExecWB(SHDocVw.OLECMDID.OLECMDID_SAVE, SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER)
这句代码,实现保存并关闭文件()
包括进程,关键是SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER