C#、如何在WebBrowser中打开PDF文档?

让爱延续 2011-04-18 03:59:24
我现在使用的是下面的方式:

OpenFileDialog openDialog = new OpenFileDialog();
if (openDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
// 使用Object标记 加载 Adobe PDF Reader
string strHtml = "<object classid = 'clsid:{CA8A9780-280D-11CF-A24D-444553540000}'" + string.Format(" width = '400' height = '500' data = '{0}' > </object>", openDialog.FileName);

// 将Html插入到WebBrowser中
this.InsertHtml(strHtml);
// WebBrowser中的DocumentText得到了预想的结果,Adobe PDF Reader 可以正常显示,但是PDF文档没有被显示出现。求原因及解决方案。
}


或者用其他的方式在WebBrowser中打开PDF也可以。

先谢谢各位大侠啦!

...全文
1322 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuzhoufeng888 2013-01-06
  • 打赏
  • 举报
回复
直接把你的OCX标记为安全类型滴。
让爱延续 2011-04-20
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 cjh200102 的回复:]

去下载个PDF的组件,然后添加引用就行了
[/Quote]

没理解清楚,请指教,谢谢!

我已经安装的Adobe Reader X了,至于你所有的添加引用是指引用“Adobe Reader X 中的 某个DLL”吗?
还有啊,我是在WebBrowser控件中 通过HTML标记去显示PDF文档。

cjh200102 2011-04-19
  • 打赏
  • 举报
回复
去下载个PDF的组件,然后添加引用就行了
让爱延续 2011-04-19
  • 打赏
  • 举报
回复
唉, 大侠们都在忙吗?
liaowenting1111 2011-04-18
  • 打赏
  • 举报
回复
这是什么啊,,,,,
zilong4460072 2011-04-18
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zaiduxinling 的回复:]

引用 3 楼 zilong4460072 的回复:

我做的是Winform显示PDF文档
要用Adobe Reader COM组件来显示PDF文档的


似乎是我没有表述清楚,我是在WinForm中、 使用WebBrowser控件、通过Object标记 加载 Adobe Acrobat 7.0,

C# code

OpenFileDialog openDialog = n……
[/Quote]
这我就不懂了 呵呵 帮你把帖子顶起来 肯定有人做过的
让爱延续 2011-04-18
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zilong4460072 的回复:]

我做的是Winform显示PDF文档
要用Adobe Reader COM组件来显示PDF文档的
[/Quote]

似乎是我没有表述清楚,我是在WinForm中、 使用WebBrowser控件、通过Object标记 加载 Adobe Acrobat 7.0,


OpenFileDialog openDialog = new OpenFileDialog();
if (openDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
// 使用Object标记 加载 Adobe PDF Reader
string strHtml = "<object classid = 'clsid:{CA8A9780-280D-11CF-A24D-444553540000}'" + string.Format(" width = '400' height = '500' data = '{0}' > </object>", openDialog.FileName);

// 将Html插入到WebBrowser中
this.InsertHtml(strHtml);
// WebBrowser中的DocumentText得到了预想的结果,Adobe PDF Reader 可以正常显示,但是PDF文档没有被显示出现。求原因及解决方案。
}


说明:其中有两点是不可改变的,一、必须使用WebBrowser控件,二、WebBrowser还是在编辑状态下。

liuqilin1987 2011-04-18
  • 打赏
  • 举报
回复
应该不能直接显示吧,需要组件的
zilong4460072 2011-04-18
  • 打赏
  • 举报
回复
我做的是Winform显示PDF文档
要用Adobe Reader COM组件来显示PDF文档的
让爱延续 2011-04-18
  • 打赏
  • 举报
回复
大侠们帮帮忙呗。


别沉。。。
让爱延续 2011-04-18
  • 打赏
  • 举报
回复

现在问题解决了一半了, 下面是一段HTML代码,在安装Adobe Reader 后、使用火狐、谷歌浏览器都可以正常显示PDF文档, 而 IE 由于禁用了 AcitveX控件,所以只有解除禁用之后才可以正常显示。


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 9.00.8112.16421"></HEAD>
<BODY>

<EMBED src = 'file:///F:/程序资源/网络资源/NET电子书/.Net.Framework3.5开发技术详解.pdf' >

</BODY></HTML>


将上述代码放入WebBrowser控件中和IE在没有解除禁用ActiveX控件之前的效果是一样的。

先请教大侠们 如何 以编程的方式 解除禁用的ActiveX控件[Adobe Reader],我也Google过相关资料,但没看懂。
嘿嘿。。请指教。



111,095

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧