登录
首页 » c++ » 这是使用libcurl库进行下载图片的程序

这是使用libcurl库进行下载图片的程序

于 2022-05-12 发布 文件大小:25.82 MB
0 92
下载积分: 2 下载次数: 1

代码说明:

这是一个在VS2010下编写的一个下载图片的程序,使用libcurl、来进行下载,编写语言是C++,进行了完整的封装。使用起来只需调用一个函数接口就可以了、

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • DSP与FPGA通讯文件 dspfpgaa
    说明:  DSP与FPGA通讯文件,此文件包含dsp和fpga的程序(Communication files between DSP and FPGA)
    2020-06-23 01:40:01下载
    积分:1
  • Demo_DsoFramer
    C#Web开发 使用DSOFramer插件实例。(C# Web developers use DSOFramer plug-in instance.)
    2013-12-13 17:17:17下载
    积分:1
  • 学生管理系统
    c++课程设计的实现, 使用list省略了链表的实现, 可以作为课程设计的参考.
    2022-01-24 17:22:15下载
    积分:1
  • TestSuite, for thinking in c++
    //: TestSuite:Suite.cpp {0} #include "Suite.h" #include #include #include using namespace std; using namespace TestSuite; void Suite::addtest(Test* t) throw(TestSuiteError) {     // verify test is valid and has a stream:     if (t == 0)     {         throw TestSuiteError("Null test int Suite::addtest");     }     else if (osptr != NULL && !t->get_stream())     {         t->set_stream(osptr);     }     tests.push_back(t);     t->reset(); } void Suite::addsuite(const Suite& s) {     for (size_t i = 0; i < s.tests.size(); ++i) &nb
    2022-04-11 18:54:53下载
    积分:1
  • CSharpSMS
    厦门才茂短信猫C#调用动态库DLL连接猫收发短信源码。(Xiamen caimore SMS cat C# call DLL dynamic library linking cat SMS source code.)
    2013-05-02 09:23:39下载
    积分:1
  • 6645678
    在文档 视图程序中加入闪屏,VC++编程精选学习源码,很好的参考资料。(Join the splash screen in the document view program, VC++ programming featured learning source code, a good reference.)
    2013-11-19 18:55:34下载
    积分:1
  • c# 扫描IP Http Header
    c# 扫描IP Http Headerusing System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Threading;using System.IO;namespace HScan{ public partial class Form1 : Form { int _currentThreads = 0; int _maxThreads = 100; Thread main = null; Thread mt = null; List threads = new List(); public Form1() { InitializeComponent(); Control.CheckForIllegalCrossThreadCalls = false; } private void btnStart_Click(object sender, EventArgs e) { btnStart.Enabled = false; if (txtStart.Text.Trim() == "") { MessageBox.Show("起始IP不能为空."); return; } if (txtEnd.Text.Trim() == "") { MessageBox.Show("结束IP不能为空."); return; } int ts = Convert.ToInt32(txtThreads.Text); _maxThreads = ts; string startIp = txtStart.Text; string endIp = txtEnd.Text; TParameter tp=new TParameter(); tp.StartIp=startIp; tp.EndIp=endIp; tp.ThreadCount=ts; main = new Thread(new ParameterizedThreadStart(StartMe)); main.Start(tp); } protected void ThreadManage() { Thread c=null; while (true) { System.Object lockThis = new System.Object(); lock (lockThis) { for (int i = 0; i < threads.Count; i ) { if (threads[i] != null && !threads[i].IsAlive) { c = threads[i]; break; } } if (c != null) { threads.Remove(c); } } } } protected void StartMe(object ob) { mt = new Thread(new ThreadStart(ThreadManage)); mt.Start(); TParameter p = ob as TParameter; string curIp = p.StartIp; while (true) { for (int i = 0; i < _maxThreads; i ) { if (curIp != "") { if (_currentThreads >= _maxThreads) break; System.Object lockThis = new System.Object(); lock (lockThis) { _currentThreads ; if (_currentThreads > _maxThreads) _currentThreads = _maxThreads; string tip = curIp; Thread t = new Thread(new ParameterizedThreadStart(Run)); t.Start(tip); threads.Add(t); curIp = IPUtility.getLastIp(curIp, p.EndIp, 1); } } else { break; } } } } protected void Run(object ob) { string ip = ob.ToString(); SocketGetHead h = new SocketGetHead(); string ret = h.GetHtml(ip, 80); if (ret.IndexOf("DVRDVS-Webs") > 0) { ListViewItem item = new ListViewItem(); item.SubItems[0].Text = (listView1.Items.Count 1).ToString(); ListViewItem.ListViewSubItem lvSubItem = new ListViewItem.ListViewSubItem(); lvSubItem.Text = ip; item.SubItems.Add(lvSubItem); lvSubItem = new ListViewItem.ListViewSubItem(); lvSubItem.Text = "DVRDVS-Webs"; item.SubItems.Add(lvSubItem); listView1.Items.Add(item); } System.Object lockThis = new System.Object(); lock(lockThis) { lblCurIp.Text = ip; _currentThreads--; if (_currentThreads < 0) _currentThreads = 0; } } private void tsmCopy_Click(object sender, EventArgs e) { if (listView1.SelectedItems.Count > 0) { string ip = listView1.SelectedItems[0].SubItems[1].Text; Clipboard.SetText(ip); } } private void tsmExport_Click(object sender, EventArgs e) { StreamWriter writer = new StreamWriter(AppDomain.CurrentDomain.BaseDirectory "\export.txt",true); foreach (ListViewItem item in listView1.Items) { string ip=item.SubItems[1].Text; writer.WriteLine(ip); writer.Flush(); } writer.Flush(); writer.Close(); MessageBox.Show("导出成功!"); } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { try { if (mt != null) { mt.Interrupt(); mt.Abort(); } foreach (Thread t in threads) { t.Interrupt(); t.Abort(); } if (main != null) { main.Interrupt(); main.Abort(); } } catch { } Thread.Sleep(5000); } private void btnStop_Click(object sender, EventArgs e) { try { if (mt != null) { mt.Interrupt(); mt.Abort(); } foreach (Thread t in threads) { t.Interrupt(); t.Abort(); } if (main != null) { main.Interrupt(); main.Abort(); } } catch { } btnStart.Enabled = true; } }}
    2014-06-23下载
    积分:1
  • maopao_youhua
    冒泡优化: 如果一个序列是int n[]={1,2,3,4,5,6,7,8,9} , 用正常的冒泡排序需要排8次才行,优化之后1次就好,也就是说序列越接近于正常序列,改进之后的冒泡排序的次数就越少,这样会给一个冒泡排序算法带了很大的效率。 思想:添加一个boolean变量用来判断冒泡是否是已经排好了顺序,如果boolean的值为false,说明是已经排好了,如果boolean的值true,说明没有排好,继续排。(If a sequence is int n [] = {, 1,2,3,4,5,6,7,8,9} need to row 8 times the job after optimization times like normal bubble sort, but alsomeans that the sequence is more close to the normal sequence, improved bubble sort, the less the number, which would give a bubble sort algorithm with a great deal of efficiency. Idea: add a boolean variable used to determine the bubble whether it is already lined up the order, if the boolean is false, indicating already lined up, if the boolean value of true, did not line up, continue to row.)
    2012-04-18 00:33:45下载
    积分:1
  • 捕获
        printf( "加载Winsock库成功 " );          printf( "调用者希望使用的Winsock版本号=%x " , wsaData.wVersion);          printf( "加载的Winsock库所支持的最高Winsock版本号=%x " , wsaData.wHighVersion);          printf( "wWinsock库的说明字符串=%s " ,& wsaData.szDescription[ 0 ]);          printf( "系统状态或配置信息的说明字符串=%s " ,& wsaData.szSystemStatus[ 0 ]);  捕获信息,TC链接
    2022-01-26 17:27:12下载
    积分:1
  • cmd_SNL_C_complier
    snl语言是一个简单的具有嵌套过程定义的过程式语言,本原码用C语言实现了SNL语言的词法分析,语法分析,语义分析,中间代码生成,中间代码优化,目标代码优化的完整模块,并有极为详细的注释,是学习编译原理的极佳材料。(snl language is a simple process with nested definition of language, Primitive code using C language of SNL language lexical analysis, parsing, semantic analysis and code generation, intermediate code optimization, object code optimization integrity module, and a very detailed notes, Principle study compiled an excellent material.)
    2021-03-30 20:59:09下载
    积分:1
  • 696518资源总数
  • 105895会员总数
  • 18今日下载