当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > Internet Explorer 编程简述(二)在IE中编辑OLE嵌入文档

ASP.NET
自定义控件(支持模板)
自定义控件(模板+数据绑定)
自定义控件(可以动态加载用户控件)
在代码隐藏中遍历当前页的所有控件
关于C#调用Office Web Components绘图的问题
利用Visual C#打造一个平滑的进度条
[VB] 防止程序运行多个实例
Visual Studio.Net 快捷键表
WinForm中ToolBar与TabControl的一些事件写法(C#)
【翻译】Managed DirectX(第六章)
利用.NET语言开发自己的脚本语言(一)
自动改变CheckBoxList选择项目的背景颜色
vb.net中windows服务的创建
BASE64编码规则及C#实现
.net中判断该应用程序是否已经启动,防止重复启动
XML Web Service 数据交换
开发花絮:一个DataList的ItemCommand事件意外
Snake.Net中的ORM(二)
ASP操作XML数据小结
可用来显示空值的时间选择控件4

ASP.NET 中的 Internet Explorer 编程简述(二)在IE中编辑OLE嵌入文档


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 79 ::
收藏到网摘: n/a

除了打开Internet上的网页,Internet Explorer还能够浏览本地文件夹及文件。如果浏览的是PDF文档或Office文档,有时候你会发现当调用Navigate("xxx.doc")的时候,Adobe Reader/Acrobat或Office等Document Servers会在IE中嵌入自己的一个实例以打开相应的文件,当然有时候也会在独立的Acrobat或Office窗口中打开文件。
在Adobe Reader/Acrobat的属性设置窗口中,我们可以找到“Display PDF in browser”的选项,如果勾上,则Navigate("xxx.pdf")将会以嵌入的方式在IE中浏览PDF文件,否则在独立的Adobe Reader/Acrobat窗口中浏览。但在Office的“选项”对话框中我们找不到这样的设置。

问题:如何在自己的浏览器中控制Office这类Ole Servers的打开方式?答案:修改文件夹选项,或修改注册表。
方法1、如下所示,从控制面板中打开“文件夹”选项,在“文件类型”属性页上找到相应的文件后缀名,如“DOC”,点击“高级”按钮,在弹出的“编辑文件类型”对话框中有“在同一窗口中浏览”的选项,如果勾上,则以嵌入IE的方式打开文档,否则在独立窗口中打开。

方法2、直接修改注册表。在“HKEY_LOCAL_MACHINE\SOFTWARE\Classes”键值下,保存了各种文件类型的注册信息,以Office文档为例,与文档相关键值如下。 文档类型 键值Microsoft Excel 7.0 worksheet Excel.Sheet.5Microsoft Excel 97 worksheet Excel.Sheet.8Microsoft Excel 2000 worksheet Excel.Sheet.8Microsoft Word 7.0 document Word.Document.6Microsoft Word 97 document Word.Document.8Microsoft Word 2000 document Word.Document.8Microsoft Project 98 project MSProject.Project.8Microsoft PowerPoint 2000 document PowerPoint.Show.8 如果我们要修改Word文档的打开方式,,则在“HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Word.Document.8”下新建一个名为“BrowserFlags”,类型为“REG_DWORD”的子键值,如果设置其值为“8”,则在独立的窗口中打开Word文档,否则在嵌入IE的Word窗口中打开文档。注:Microsoft Excel 7.0 worksheet稍有不同,应设置BrowserFlags的值为“9”方可在独立的窗口中打开文档。

参考资料:MSDN:259970:In-Place Activating Document Servers in Internet ExplorerMSDN:162059:How to configure Internet Explorer to open Office documents in the appropriate Office program instead of in Internet Explorer