winform中用webBrowser显示一个页面,页面下载附件时窗体自动关闭如何解决?
小弟用winform做了一个软件,根据业务需求,必须用webBrowser载入一个网站,
其中有一个网页a.aspx需要动态生成一个二进制流文件,并用于下载。
代码如下:
- C# code
Response.ContentType = "application/octet-stream";Response.AddHeader("Content-Disposition", "attachment;filename=附件名");//获取二进制数据Byte[] docBinary = 从数据库动态取出二进制流;Response.OutputStream.Write(docBinary, 0, docBinary.Length);Response.End();网站发布好后,在IE中浏览a.aspx,下载附件没有任何问题。
然后在winform的webmain窗体中载入网站,webmain.cs代码如下:
- C# code
try{ webBrowser.Url = new Uri(strUrl + "&time=" + DateTime.Now);}catch (Exception ex){ LogUtil.WriteLog(ex);}软件安装在XP系统中运行,可以下载附件,但是在vista和win7中一点打开按钮或者保存按钮就直接自动关闭了。
怎么回事啊?
[解决办法]
webBrowser 不行的话,可以用DEV公司的浏览器控件。
另外网上有一些开源的此类控件。