2011-03-08 71 views
2

我在内存中有一些二进制数据(代表一个PDF文件)。我希望能够做的是将标准的.NET浏览器控件直接指向这些数据。例如:.NET Web浏览器控件在内存数据中使用

myLib mylib = new myLib(); 
object vbyt = mylib.GetPDFDocument(); 
webBrowser1.data = vbyt; 

这是可能的,还是我需要将PDF保存到文件并从那里读取?

编辑:

我认为有以下应该做什么,我需要,但它只是吐出垃圾 - 谁能告诉我,为什么/办法得到这个工作?

byte[] vbyt = (byte[])mylib.GetPDFDocument(); 

MemoryStream ms = new MemoryStream(); 

ms.Write(vbyt, 0, vbyt.Length); 
ms.Position = 0; 

//conetent type = "application/pdf";    
webBrowser1.DocumentStream = ms; 

回答

2

我相信还有一点比this page should help还多。

这里有一个duplicate question这里。

+0

仅供参考这是很容易保存它到一个文件,只是浏览器。导航()到磁盘上的PDF。 – 2011-03-10 12:46:15

+0

刚刚找到答案,并正在阅读它,你打败了我!是保存页面更容易,但OP似乎想避免这样做。 – mdm 2011-03-10 12:49:28

+0

同意 - 这就是为什么我发布链接解释如何做到这一点。但它绝对比简单导航到PDF更加涉及。 – 2011-03-10 12:56:05