c#geckofx文件流下载

备注:内容仅提供参考。

⒈添加引用:using Gecko;

⒉然后根据自己的情况在某个方法内添加事件:

        LauncherDialog.Download += new EventHandler<LauncherDialogEvent>(OnDownloadFile);

⒊再声明方法:

private void OnDownloadFile(object sender, LauncherDialogEvent e){nsILocalFile objTarget = Xpcom.CreateInstance<nsILocalFile>("@mozilla.org/file/local;1");using (nsAString tmp = new nsAString(@Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\temp.tmp")){objTarget.InitWithPath(tmp);}//Save file dialog
            Stream myStream;System.Windows.Forms.SaveFileDialog saveFileDialog1 = new System.Windows.Forms.SaveFileDialog();saveFileDialog1.Filter = "All files (*.*)|*.*";saveFileDialog1.FilterIndex = 2;saveFileDialog1.RestoreDirectory = true;saveFileDialog1.FileName = e.Filename;if (saveFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK){if ((myStream = saveFileDialog1.OpenFile()) != null){nsIURI source = IOService.CreateNsIUri(e.Url);nsIURI dest = IOService.CreateNsIUri(new Uri(@saveFileDialog1.FileName).AbsoluteUri);nsAStringBase t = (nsAStringBase)new nsAString(System.IO.Path.GetFileName(@saveFileDialog1.FileName));nsIWebBrowserPersist persist = Xpcom.CreateInstance<nsIWebBrowserPersist>("@mozilla.org/embedding/browser/nsWebBrowserPersist;1");persist.SaveURI(source, null, null, null, null, (nsISupports)dest, null);nsIDownloadManager DownloadMan = null;DownloadMan = Xpcom.CreateInstance<nsIDownloadManager>("@mozilla.org/download-manager;1");nsIDownload download = DownloadMan.AddDownload(0, source, dest, t, e.Mime, 0, null, (nsICancelable)persist, false);if (download != null){persist.SetPersistFlagsAttribute(2 | 32 | 16384);persist.SetProgressListenerAttribute((nsIWebProgressListener)download);persist.SaveURI(source, null, null, null, null, (nsISupports)dest, null);}myStream.Close();}}}

 

转载于:https://www.cnblogs.com/RedSky/p/5626006.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/271513.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

获取后端接口请求中的参数(@PathVariable,@RequestParam,@RequestBody区别,使用postman请求

获取参数 SpringBoot提供的获取参数注解包括&#xff1a;PathVariable&#xff0c;RequestParam&#xff0c;RequestBody,三者的区别如下表&#xff1a; 一:后端接口什么都不加 postman请求后端接口 二:后端接口加RequestParam POST请求RequestParam&#xff1a; ① 用来处理…

spark shell 删除失效_Spark任务提交源码解析

1. 前言反反复复捣鼓了很久&#xff0c;终于开始学习Spark的源码了&#xff0c;果不其然&#xff0c;那真的很有趣。这里我打算一本正经的胡说八道来讲一下Spark作业的提交过程。基础mac系统基础环境如下&#xff1a;JDK 1.8IDEA 2019.3源码Spark 2.3.3Scala 2.11.8提交脚本# 事…

硬件基础:理解串口通信以及232,485,422常见问题

这里并不对串口的编程作讲解&#xff0c;主要是从应用的角度去讲一讲。因为更多的时候&#xff0c;都是产品做好了&#xff0c;比如触摸屏需要和控制器&#xff0c;PLC通信。理想的情况下&#xff0c;一般只要一上电&#xff0c;不需要太多的操作和配置&#xff0c;就可以通信上…

decimal转为string sql_SQL注入详解|OWASP Top 10安全风险实践(二)

本文为一些列连载文章之一&#xff0c;不定期更新&#xff0c;计划目录如下&#xff1a;OWASP介绍SQL注入命令注入XML外部实体注入XPATH注入反射式、DOM及存储XSS失效的身份认证和会话管理不安全的直接对象引用安全配置错误敏感信息泄露功能级访问控制缺失跨站请求伪造服务端请…

各类排序算法实现(亲测)

排序算法通常分为外部排序和内部排序&#xff0c;通常所说的八类排序属于内部排序&#xff1b; 外部排序在此不说明&#xff0c;主要给出八类排序的简单思想和实现&#xff1a; 1.插入排序 1.1 直接插入排序&#xff1a; 每次将一个新数&#xff0c;插入到已经排列好的有序…

冲正什么意思

冲正是用户在进行银行转账或者du取现交易时&#xff0c;在未操作成功&#xff0c;但是银行卡账户发生了扣款时&#xff0c;采取的一种补救的方法&#xff0c;银行的专业术语称之为冲正。其实就是银行系统在误扣了用户银行卡中的金额后&#xff0c;再将金额退还到用户银行卡中的…

.net 2005大写html标签 xhtml10,HTML10.ppt

关于标签的说明 正如之前所说的&#xff0c;部分的内容并不是为浏览者写的&#xff0c;而是为浏览器和搜索引擎写的。因此部分不应该含有任何在页面中可视的的内容。 DTD 如果现在再次效验我们的网页&#xff0c;仍然会得到出错信息&#xff0c;提示找不到DTD文件&#xff0c;那…

计算机基础:声音的相关知识笔记

1、声音的相关概念 模拟声音信号&#xff1a;声波在时间和幅度上都是连续的模拟信号。 1.1 声音的组成 幅度&#xff1a;声波的振幅。计量单位是分贝&#xff08;dB&#xff09; 频率&#xff1a;声波每秒变化的次数&#xff0c;用Hz表示。人耳能听到的声音信号的频率范围20Hz~…

ansi编码_Java 字符编码

点击上方蓝字关注我们&#xff01;作者介绍王云静&#xff0c;Java 开发工程师&#xff0c;2018 年 7 月加入去哪儿网&#xff0c;目前在目的地 - 呼叫中心。曾获得过 ACM 亚洲区域赛铜牌。-----基本概念字符集字符(Character)是各种文字和符号的总称&#xff0c;包括各国家文字…

外卖和快递行业数据_下周一起,整治全面启动!锁定全市外卖、快递行业!

为加强我市外卖、快递行业电动自行车交通安全管理&#xff0c;降压预防事故&#xff0c;营造良好的通行秩序&#xff0c;下周一起(12月21日)深圳交警将开展电动自行车交通安全月暨外卖、快递行业集中整治行动。⭕圈重点⭕下周一起(12月21日)正式开展外卖、快递行业集中整治行动…

计算机基础:图形、图像相关知识笔记

1、图形、图像的基础知识 图形&#xff1a;由称为矢量的数学对象所定义的直线和曲线等组成。 图像&#xff1a;也称为栅格图像&#xff0c;由点阵图或位图图像、用像素来代表图像。每一个像素都被分配一个特点的位置和颜色值。 图形和图像之间在一定条件下可以互相转换&#xf…

计算机应用用什么样的笔记本,制图用什么笔记本好

以前人们常说的绘画都是在纸上&#xff0c;然而科技时代的到来也让绘画的方式有了改变&#xff0c;而且现实中还在发展电子商务&#xff0c;因此大家都开始使用计算机制图&#xff0c;不同的计算机制图的方式不一样&#xff0c;专业使用电脑制图的人都会对电脑比较挑剔。它们还…

Powerdesigner 在线打开 不用安装客户端 访问pdm,ldm文件

Powerdesigner 在线打开 不用安装客户端 http://www.dmanywhere.cn/

【代码笔记】iOS-下拉选项cell

一&#xff0c;效果图。 二&#xff0c;工程图。 三&#xff0c;代码。 RootViewController.h #import <UIKit/UIKit.h> //加入头文件 #import "ComboBoxView.h"interface RootViewController : UIViewController {ComboBoxView *_comboBox; }end RootV…

宽量程电压电流 stm32_万用表你只会量电压电流?史上最全万用表手册,这么做你不会烧表...

一&#xff0c;万用表使用前的准备。二&#xff0c;万用表各个档位的含义。三&#xff0c;万用表测量电压。四&#xff0c;万用表测量电流。五&#xff0c;万用表测量电阻。六&#xff0c;万用表测量二极管。七&#xff0c;万用表测量电容。八&#xff0c;万用表一般的维护保养…

24个笔画顺序表_小学一年级语文26个汉语拼音字母要点+田字格儿歌,赶紧给孩子看...

126个汉语拼音字母要点汉语拼音字母表-声母表汉语中每个音节起始处的辅音可以构成声母。汉语拼音方案《声母表》规定的声母符号一共有23个。b [玻] p [坡] m [摸] f [佛]d [得] t [特] n [讷] l [勒]g [哥] k [科] h [喝] j [基] q [欺] x [希]z [资] c[雌] s [思] r [日] zh[知…

多媒体基础:动画和视频知识笔记

1、动画和视频的概念 动画&#xff1a;将静态的图像、图形等按照一定的时间顺序显示而形成的连续的动态画面。传统意义来说动画是在连续多格的胶片上拍摄的一系列画面&#xff0c;比将胶片以一定的速度放映&#xff0c;从而产生动态的视觉技术。 视频&#xff1a;活动的、连续的…

mongoDB的安装(一)

0、安装环境说明&#xff1a; linux系统&#xff1a;centos6.5 mongoDB版本&#xff1a;mongodb-linux-x86_64-rhel62-3.2.7.tgz 1、下载 mongoDB的下载&#xff1a;https://www.mongodb.com/download-center#community&#xff0c;注意选择版本 2、解压 tar -zxvf mongodb-lin…

计算机管理任务计划程序损坏,win7弹出任务计划程序窗口显示该任务映像损坏或已篡改0x80041321错误代码怎么办...

最近有win7 64位专业版系统用户到本站反馈说碰到这样一个问题&#xff0c;就是电脑突然弹出一个任务计划程序窗口&#xff0c;显示该任务映像损坏或已篡改0x80041321错误代码&#xff0c;遇到这样的问题该如何处理呢&#xff0c;本文就给大家讲解一下win7弹出任务计划程序窗口显…

c51单片机矩阵键盘1602计算器_基于51单片机矩阵键盘的简易计算器制作

1. 运算过程、符号公式实时显示在显示屏上(I2C 1602)。2. 自带三角函数、开根号、平方运算。3. 计算得出的结果可设置保存并用以下一次计算。4. 所有运算结果精确到至少小数点后两位。5. 运算结果可通过串口发送给上位机。6. 当断电重启时&#xff0c;能存储并显示断电前正在计…