收藏 分享(赏)

自己玩下载.doc

上传人:gnk289057 文档编号:9575492 上传时间:2019-08-16 格式:DOC 页数:6 大小:33KB
下载 相关 举报
自己玩下载.doc_第1页
第1页 / 共6页
自己玩下载.doc_第2页
第2页 / 共6页
自己玩下载.doc_第3页
第3页 / 共6页
自己玩下载.doc_第4页
第4页 / 共6页
自己玩下载.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、自己玩下载.txt 什么叫乐观派?这个。 。 。 。 。 。就象茶壶一样,屁股被烧得红红的,还有心情吹口哨。生活其实很简单,过了今天就是明天。一生看一个女人是不科学的,容易看出病来。原创自己玩下载文章标题:原创自己玩下载顶部 风泽 发布于:2005-03-2416:46 楼主原创自己玩下载文章作者:风泽E.S.T信息来源:邪恶八进制 PRC由于这个文章太简单太简单,偶都不好意思发了。但看着最近么什么原创的东西,所以就拿出来充充数了。别打我,我会伤心的。参考了 WINSHELL 的部分代码,本来想突破防火墙的,因为技术原因没能继续写下去,现在想到一种方法,但又没时间写了。唉自己玩下载-风泽E.S

2、.T现在互连网上的资源是应有尽有,把这些软件下载到自己的计算机上慢慢查看是每个网虫每天必须做的一件事。相应的也就出现了很多功能丰富的下载软件,但您有没有自己想过自己写一个下载程序?LETSGO!今天我就带大家来实现一个功能非常简单的下载程序。开发环境:WINDOWS2000+VC+6.0使用语言:C实现功能:下载网络资源首先我们要建立一个文件夹来存放下载的软件,利用 Directory();就可以轻松实现。代码如下:intDirectory()/建立目录,如果成功返回 1,不成功返回 0intD;D=CreateDirectory(“c:mydownload“,NULL);returnD;当文

3、件夹存在时,函数将什么也不做,达到文件夹不存在时建立文件夹的目的。我们利用 URLDownloadToFile();这个函数来实现下载,我们来简单的看一下这个函数的简单介绍:URLDownloadToFile 函数原型:HRESULTURLDownloadToFile( LPUNKNOWNpCaller,LPCTSTRszURL,LPCTSTRszFileName,DWORDdwReserved,LPBINDSTATUSCALLBACKlpfnCB);这个 API 是在 URLMON.DLL 文件中的一个导出函数,简单的实现了把一个文件从 WEB 服务器下载本机的功能,其实用这个函数还可以帮我

4、们处理了断点续传,缓存等等的功能。URLDownloadToFile 的五个参数:第一个一般为 NULL。第二个参数就是要下载文件的目标 URL,完整路径。第三个是本地保存路径,也是完整路径。第四个是保留,必须为 0。第五个是指向一个 IBindStatusCallback 接口的指针,这就类似一种回调机制,你可以参考这些来活动当前下载进度,选择是否继续下载等等.在这个简单的程序我们只关心第二和第三个参数,其他的通通设置成 0。具体代码如下:intdownfile(char*downurl)/下载文件保存到 c:mydownload 目录下。HRESULTh;char*filename; ch

5、ar*tk; charurlMAX_PATH; charpathMAX_PATH; charst=“/“;intreslut=0; strcpy(url,downurl); /将下载路径拷贝到 URL 中 tk=strtok(url,st); /获取下载路径中的文件名while(tk!=NULL)filename=tk; tk=strtok(NULL,st);strcpy(path,“c:mydownload“); /将“c:mydownload“拷贝到 PATH 中strcat(path,filename); /连接字符串,得到完整保存路径 if(file(path) /调用判断文件名是否重

6、名函数printf(“连接中n“);h=URLDownloadToFile(0,downurl,path,0,0);/下载文件if(h=S_OK) /判断是否下载完成 printf(“文件下载成功!n“);printf(“文件保存路径:%sn“,path);returnreslut; /函数返回 0elsereslut=1;returnreslut; /函数返回 1elseexit(0);根据函数返回值我们来进行判断:i=downfile(u);if(i=0)printf(“谢谢使用。n“);elseprintf(“n 未找到下载文件,请检查下载地址是否正确n“);程序写到这里功能基本已经实现

7、了,但还有一个文件名重名的问题需要我们处理一下,所以我就写了一个简单的函数来实现判断,代码如下:intfile(char*pathname)/检查下载文件和保存目录中的文件时候有重复。如果有则询问是否删除。intret=1;charinput;FILE*HI;if(HI=fopen(pathname,“r“)=NULL) /打开指定路径的文件 /函数返回 1returnret;elseprintf(“发现重名文件,选择是否删除(Y/N):“);fclose(HI);input=getche(); /等待输入printf(“n“);if(input=y|input=Y)/对输入进行判断 /删除文

8、件,返回 1if(DeleteFile(pathname) /调用删除文件的 API 函数 DeleteFile();returnret;elseGetLastError(); /返回错误信息else /函数返回 0ret=0;returnret;returnret;好了,简单的下载软件就基本实现了,现在用 VC+编译一下运行看看,我们已经可以从空间上下载程序了,虽然这个软件的功能远远差于流行的下载软件,但毕竟是自己亲手写出来的,用起来感觉就是不同啊.:P 顶部 冰血封情 发布于:2005-03-2417:52 1 楼风泽前段时间忙工作能有空写个文章真是难为他了:)加油呀 EvilH5u 顶部

9、 风泽 发布于:2005-03-2418:35 2 楼我哭真感动我的名字一下子被改了 2 个晕风泽:风贼(这个!#$%$#%)EvilHsu:EvilH5u(这个我喜欢)顶部 恶猫 发布于:2005-03-2611:30 3 楼用 c#写个简单的下载程序CopycodeusingSystem;usingSystem.Net;namespacedownload/Class1 的摘要说明。/classClass1/应用程序的主入口点。/STAThreadstaticvoidMain(stringargs)trystringmyStringWebResource=null;WebClientmyWe

10、bClient=newWebClient();myStringWebResource=args0+args1;Console.WriteLine(“DownloadingFile“0“from“1“.n“,args1,myStringWebResource);myWebClient.DownloadFile(myStringWebResource,args1); Console.WriteLine(“SuccessfullyDownloadedFile“0“from“1“,args1,myStringWebResource);catch(Exceptione)Console.WriteLine

11、(“usage:download.exe“);Console.WriteLine(“example:download.exeurlhttp:/ 2005-03-2615:30 重新编辑顶部 风泽 发布于:2005-04-0821:49 4 楼恶猫看来比我牛多了,和都会啊!牛人啊顶部 恶猫 发布于:2005-04-0822:14 5 楼那里呀,风泽兄,我是现学现卖,我前一阵子,想了解一下.net 平台,我总觉的.net 的概念我很模糊,所以看了看 c#,现在的学习还是以 c 为主(c)Copyleft2003-2007,EvilOctalSecurityTeam.ThisfileisdecompiledbyanunregisteredversionofChmDecompiler.Regsiteredversiondoesnotshowthismessage.YoucandownloadChmDecompilerat:http:/

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报