Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 打开webbrowser控件中存储在字节[]中的文件_C# - Fatal编程技术网

C# 打开webbrowser控件中存储在字节[]中的文件

C# 打开webbrowser控件中存储在字节[]中的文件,c#,C#,是否有一种方法可以获取字节[]并打开文件,而不必将其写入磁盘并在完成后将其删除?它们将是pdf文件 更新2 if (e.Result is byte[]) { byte[] message = (byte[])e.Result; using (MemoryStream stream = new MemoryStream(message)) {

是否有一种方法可以获取字节[]并打开文件,而不必将其写入磁盘并在完成后将其删除?它们将是pdf文件

更新2

if (e.Result is byte[])
            {
                byte[] message = (byte[])e.Result;
                using (MemoryStream stream = new MemoryStream(message))
                {
                    stream.Position = 0;
                    wbMessage.NavigateToStream(stream);
                }
            }

我放弃了这个想法,使用Adobe的COM对象来显示我的PDF

MemoryStream
有一个构造函数,它接受
字节[]

这一切都取决于你在“打开”文件时将如何处理它。如果你在你的程序中打开它,是的,你可以,如果你试图在像Adobe Reader这样的外部程序中打开它,你不能。在我得到PDF查看器控件之前,我将把它加载到浏览器控件中,该控件将使用Adobe Reader更新我正在尝试的OP。另外,我不认为我需要MemoryStream,因为它已经是一个字节[]@Tsukasa。看起来您仍然应该使用MemoryStream,但只需将该流传递到与DocumentStream等效的wpf?注意:这不起作用,因为web浏览器无法正确读取PDF二进制文件的内存流。所以这个答案是毫无用处的。