Winform文件下载之WebClient】的更多相关文章

最近升级了公司内部使用的一个下载小工具,主要提升了下面几点: 1. 在一些分公司的局域网中,连接不上外网 2. 服务器上的文件更新后,下载到的还是更新前的文件 3. 没有下载进度提示 4. 不能终止下载 下面和大家分享一些心得. 鉴于各种复杂的网络环境,笔者决定采用不同的编程接口进行下载尝试,以增加程序的可用性. 这里仅介绍使用WebClient的方法.博文中主要介绍思路和关键代码,完整的demo附在文末. 使用代理访问网络 很多公司的员工都是通过公司设置的代理上网的.通过代理上网主要是方便公司…
在C#中,除了webclient我们还可以使用一组WindowsAPI来完成下载任务.这就是Windows Internet,简称 WinINet.本文通过一个demo来介绍WinINet的基本用法和一些实用技巧. 系列文章 Winform文件下载之WebClient 接口介绍 相比WebClient的用法,Win32API在使用时可能会烦琐一些.所以先把用到的API简单介绍一下. 资源的初始化和释放 InternetOpen 这是需要调用的第一个方法,它会初始化内部数据结构,为后面的调用做准备…
由于项目需要,最近研究了下WebClient的数据传输.关于WebClient介绍网上有很多详细介绍,大概就是利用WebClient可以实现对Internet资源的访问.无外乎客户端发送请求,服务端处理请求.回应请求.所以,我下面就简单描述下学习过程中遇到的一些问题: 1.关于Winform客户端请求 WebClient wc = new WebClient();//初始化 webclient string path = "http://192.168.1.115:8089/Handler1.a…
这两天因为工作的需要,需要做一个winform上传数据到服务器端的程序.当时第一个想法是通过webservice的方式来实现,后来觉得麻 烦,想偷懒就没有用这样的方式,http的post方式变成了第一选择.因为以前用的都是httpwebrequest之类的东西进行post提 交,winform下面还真的是第一次,不过很快就在网上找到了webclient这个类,接下来开始实现功能,话说webclient用起来还真的很简 单,一个头信息的声明,然后是URL,最后是post的数据,就完事了.正在高兴的…
在本系列的前两篇文章中,分别向大家介绍了用于完成下载任务的 WebClinet 和 WinINet 的基本用法和一些实用技巧. 今天来为大家讲述下载过程中最常遇到的断点续传问题. 首先明确一点,本文所说的断点续传特指 HTTP 协议中的断点续传,文章中讲述了实现断点续传的方法思路和关键代码,想了解更多细节的同学,请下载并查看本文附带的 demo. 工作原理 http 协议中定义了一些请求/响应头,通过组合使用这些头信息,即可实现分批下载同一文件的目的.例如,在一次 http 请求中只请求文件中的…
private void button1_Click(object sender, EventArgs e) { doDownload(textBox1.Text.Trim()); } private DateTime StartTime; private void doDownload(string url,string fileName="") { label1.Text = "正在下载:" + url;//label框提示下载文件 if (fileName.L…
最近更新了一个下载小工具,主要提升了下面几点: 1. 在一些分公司的局域网中,连接不上外网 2. 服务器上的文件更新后,下载到的还是更新前的文件 3. 没有下载进度提示 4. 不能终止下载 下面和大家分享一些心得. 鉴于各种复杂的网络环境,笔者决定采用不同的编程接口进行下载尝试,以增加程序的可用性. 这里仅介绍使用 WebClient 的方法,后续的文章会介绍其他的方法.博文中主要介绍思路和关键代码,完整的 demo 附在文末. 使用代理访问网络 很多公司的员工都是通过公司设置的代理上网的.通过…
public void HttpDownload(string url, string path, ResourceType type) { using (var client = new WebClient()) { client.Headers.Add("User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)"); client.Headers.Ad…
有时候,我们用C#写一些客户端应用程序需要从服务器下载一些资源,如图片.dll.配置文件等.下面就来说一下,在Winform及WPF中如何下载文件. 我们的资源大多放在自己的网站上,或者从其他网站下载资源,我们需要给客户端一个URL,先给出代码: /// <summary> /// 下载文件 /// </summary> /// <param name="URL">下载文件地址</param> /// <param name=&qu…
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAx4AAAI7CAIAAADtTtpYAAAgAElEQVR4nO3dX6xlV33Y8f3UJFUqHq…
.Net2.0中新增了很多组件,WebClient就是其中一个,功能也很强大,今天拿WebClient做了一个小实验,只用到了一些很简单的功能就可以实现以前不好实现的功能,很方便. 简单介绍一下WebClient:    WebClient 类提供向 URI 标识的任何本地.Intranet 或 Internet 资源发送数据以及从这些资源接收数据的公共方法.    WebClient 类使用 WebRequest 类提供对资源的访问.WebClient 实例可以通过任何已向 WebReques…
C#[WinForm]实现自动更新 winform程序相对web程序而言,功能更强大,编程更方便,但软件更新却相当麻烦,要到客户端一台一台地升级,面对这个实际问题,在最近的一个小项目中,本人设计了一个通过软件实现自动升级技术方案,弥补了这一缺陷,有较好的参考价值 实现原理:在WebServices中实现一个GetVer的WebMethod方法,其作用是获取当前的最新版本. 然后将现在版本与最新版本比较,如果有新版本,则进行升级. 步骤: .准备一个XML文件 (Update.xml). <?xm…
在 C# 中,除了 WebClient 我们还可以使用一组 WindowsAPI 来完成下载任务.这就是 Windows Internet,简称 WinINet.本文通过一个 demo 来介绍 WinINet 的基本用法和一些实用技巧. 接口介绍 相比 WebClient 的用法,Win32API 在使用时可能会烦琐一些.所以先把用到的 API 简单介绍一下. 资源的初始化和释放 InternetOpen这是需要调用的第一个方法,它会初始化内部数据结构,为后面的调用做准备. InternetCl…
WebApi代码: public class ValuesController : ApiController { Entities db=new Entities(); // GET api/values public IEnumerable<Person> Get() { return db.Person; } // GET api/values/5 public Person Get(int id) { return db.Person.FirstOrDefault(o => o.…
WebAPI  Controllers public class SimuController : ApiController { //EF 5 BIM_GENERALDICTONARY_DBEntities entities=new BIM_GENERALDICTONARY_DBEntities(); // GET api/Simu public IEnumerable<T_BIM_PropityClass> Get() { return entities.T_BIM_PropityClas…
引言 2015年第一篇,Winform在线更新,算是重操旧业吧,09年刚到北京时一直做硬件联动编程,所以大多数时间都在搞Winform, 但是从来没做过在线更新这个功能,前几天参与部门另一个项目,上来就需要加一个在线更新. 该自动更新组件核心是圣殿骑士开发的,另外参考逆水寒龙使用情况,当我拿到这个组件源代码时并不知道如何去用,花了大半天时间也没调试通过,所以把我遇到的问题和解决方法记录下来,方便后续其他Coder使用时查看使用方法. 在线更新思路 1.请求远程站点Version.xml 或者请求…
前言 之前几篇文章已经介绍了 Web 与 Web API 的使用方式,接下来将介绍如何在 Windows Form 呼叫 Web API 的方法,要在 WinForm 中使用 Web API 的话,除了可以使用旧有的 WebClient.HttpWebRequest 类别之外,还可以使用新的 HttpClient 类别进行操作,HttpClient 类别是包含在 .Net Framework 4.5 中的 System.Net.Http 之命名空间底下,HttpClient 类别一般来说需要在…
线程机制(避免卡屏),异步下载文件. 我做网站的监控,WebClient.DownloadFile这个方法是我经常用到的,必要的时候肯定是要从网上下载些什么(WebRequest 也可以下载网络文件,不妨搜下,不过WebClient.DownloadFile使用更简单). 今天简单的演示下WebClient.DownloadFileAsync的使用,刚刚写好的实例,有问题你拍我. 解释什么的都不需要了吧.这里面应用了线程机制,异步调用.wo先展示代码,在把一些关键点放置到后面,并给一些修改建议(…
声明:核心功能的实现是由园子里圣殿骑士大哥写的,本人是基于他核心代码,按照自己需求进行修改的.   而AutoUpdaterService.xml文件生成工具是基于评论#215楼 ptangbao的代码而改写的. 由于这个组件是在10年写的,.net也有更新有的方法已提示过时,更改如下: //Added the function to support proxy //clientDownload.Proxy = System.Net.WebProxy.GetDefaultProxy(); cli…
转载自  在winform实现文件上传到服务器 webform上传文件可能大家都写过很多,一个HtmlInputFile.PostedFile.SaveAs就搞定了,不过不知道大家有没有在winform做过向服务器上传文件呢? 一个很自然的想法是用Web Services,呵呵,我也很喜欢Web Services,但是后来我在网上查了一下资料,发现了另外一种比简单实用的方法, 通过WebClient(或者HttpWebRequest)来模拟HTTP的POST动作来实现.写出来和大家探讨一下,那位…
6.1运行效果: 6.2开发实现: 1.先在要使用的项目进行引用,SNF.WinForm.Attachments.dll文件. 2.在工具箱内新建选项卡->选择项,浏览找到文件SNF.WinForm.Attachments.dll后会出现控件UCAttachments如下: 3.拖拽控件:UCAttachments到合适的位置上.(注:如果没有这个控件就从其它项目复制过来或者在工具箱里 选择项添加这个dll进来就有了) 4.需要配置如下属性: BusinessID业务表主键.这个主键是你业务表的…
1.首先要在服务器端新建一个网站axpx页 然后再网站的后台写代码获取winform传过来的文件名. 声明:这个方法虽然最简单最省事,但是上传大文件可能会报错,我的机器是10M, 超过10M就会提示报错. //这是网站的后台代码,获取winform传过来的文件名 protected void Page_Load(object sender, EventArgs e) { foreach (string f in Request.Files.AllKeys) { HttpPostedFile fi…
假如某网站有个表单,例如(url: http://localhost/login.aspx):帐号  密码 我们需要在程序中提交数据到这个表单,对于这种表单,我们可以使用 WebClient.UploadData 方法来实现,将所要上传的 数据拼成字符即可,程序很简单 string uriString = "http://localhost/login.aspx";// 创建一个新的 WebClient 实例.WebClient myWebClient = new WebClient(…
最近使用winform对webapi进行测试,搜集到园友的文章,记录下来供后续参考. 第一篇文章,原文地址http://www.cnblogs.com/Johnny_Z/archive/2012/02/12/2348286.html 代码 using System.Net; using System.IO; //创建HttpWebRequest对象 HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("http://192…
刚到公司混的时候,老板要求实现一个从C#的windows应用程序传参数到一个网页,然后这个网页不显示出来,但能把数据返回给应用程序的功能,问了好多人,找了好多资料,都搞不定,后来还是在老板的帮助下搞定的......,现在把方法写出来供大家参考. ­ 其原理是,利用winfrom模拟表单提交数据,将要提交的参数提交给网页,网页执行代码,得到数据,然后Winform程序将网页的所有源代码读取下来,这样就达到windows应用程序和web应用程序之间传参和现实数据的效果了. ­ 首先创建一个windo…
做winform的程序,不管用没用过自动更新,至少都想过自动更新是怎么实现的. 我这里共享一个自动更新的一套版本,给还没下手开始写的人一些帮助,也希望有大神来到,给指点优化意见. 本初我是通过socket来传输文件的,后来因为传大文件出现异常,前期又没有定义比较好的协议,后来就改用webservices了. 自动更新分三个部分,服务端(webservice服务,配置与更新),配置客户端(或叫发布客户端),客户端(主程序) 服务端:         ConfigServer.asmx 因为代码共享…
1.主要用途:使用户可以在窗体中导航网页. 2.注意:WebBrowser 控件会占用大量资源.使用完该控件后一定要调用 Dispose 方法,以便确保及时释放所有资源.必须在附加事件的同一线程上调用 Dispose 方法,该线程应始终是消息或用户界面 (UI) 线程. 3.WebBrowser 使用下面的成员可以将控件导航到特定 URL.在导航历史记录列表中向后和向前移动,还可以加载当前用户的主页和搜索页: 1.URL属性:可读.可写,用于获取或设置当前文档的 URL. WebBrowser …
private long fileLength; private long downLength;//已经下载文件大小,外面想用就改成公共属性 private static bool stopDown; public HttpDownLoad() { fileLength = ; downLength = ; stopDown = false; // // TODO: 在此处添加构造函数逻辑 // } /// <summary> /// 文件下载 /// </summary> //…
using System; using System.Collections.Generic; using System.Text; using System.Net; using System.IO; namespace Common { /// <summary> /// winform形式的文件传输类 /// </summary> public class WinFileTransporter { /// <summary> /// WebClient上传文件至服…
winform实现自动更新并动态调用form实现 标签: winform作业dllbytenull服务器 2008-08-04 17:36 1102人阅读 评论(0) 收藏 举报  分类: c#2005(27)  版权声明:本文为博主原创文章,未经博主允许不得转载. winform 应用系统的部署问题,一直是个令人苦恼的问题.在2.0下,我们可以通过clickonce方式部署,但是这里要说的,是利用文件的操作来对系统进行更新. 为了方便用户作业,把实际的系统打包成DLL存在,而设计一个自动更新的…