C++ 在c++;和明 **如何使用libcurl创建dll。你能给我一个示例代码吗** #包括 #包括 #包括 #包括 #包括 #包括 使用名称空间std;字符串数据;类型定义 #ifdef生成\u TESTCURL\u DLL #定义TESTC
在c++;和明C++ 在c++;和明 **如何使用libcurl创建dll。你能给我一个示例代码吗** #包括 #包括 #包括 #包括 #包括 #包括 使用名称空间std;字符串数据;类型定义 #ifdef生成\u TESTCURL\u DLL #定义TESTC,c++,C++,在c++;和明 **如何使用libcurl创建dll。你能给我一个示例代码吗** #包括 #包括 #包括 #包括 #包括 #包括 使用名称空间std;字符串数据;类型定义 #ifdef生成\u TESTCURL\u DLL #定义TESTCURL\u DLL\u declspec(dllexport) #否则 #定义TESTCURL\u DLL\u declspec(dllimport) #恩迪夫 curl\u global\u init(curl\u global\u ALL)
**如何使用libcurl创建dll。你能给我一个示例代码吗**
#包括
#包括
#包括
#包括
#包括
#包括
使用名称空间std;字符串数据;类型定义
#ifdef生成\u TESTCURL\u DLL
#定义TESTCURL\u DLL\u declspec(dllexport)
#否则
#定义TESTCURL\u DLL\u declspec(dllimport)
#恩迪夫
curl\u global\u init(curl\u global\u ALL)//很明显
curl=curl_easy_init();
curl_easy_setopt(curl,CURLOPT_URL,lpURL);
curl\u easy\u setopt(curl、CURLOPT\u WRITEFUNCTION和writeCallback);
curl_easy_setopt(curl、CURLOPT_WRITEDATA和response);
旋度,易于执行(旋度);
如果(数据==“1”)
{
//printf(“成功”);
strcpy(结果,“1”);
}
v5=1;
旋度\轻松\清洁(旋度);
curl_global_cleanup();
size\u t TESTCURL\u DLL writeCallback(char*buf,size\u t size,size\u t
nmemb,void*up){
对于(int c=0;cYou没有针对libcurl
进行链接。请尝试将-llibcurl
添加到编译命令。如果您在MinGW安装中正确安装了curl,则应该可以找到它。它不起作用。请查看我的工作目录链接:[link]好的,也许您有libcurl的动态版本(-llibcurl.dll
)。您是如何将curllib安装到MinGW的?它是否位于您的MSYS/usr/lib
?我使用的是windows 7。在我尝试使用libcurl-7.19.3-win32-ssl-msvc.7z开发dll之前,但没有成功。然后我下载了curl-7.16.4.zip,并使用MinGW制作了curl。然后我正在尝试开发一个dll文件。尚未成功。请参阅e屏幕截图,这是我的整个目录。链接:1..2..3。好的,请尝试将以下内容添加到您的命令行(case senstitive!):-LC:/vd/curl/lib-llibcurl.dll
。如果这样做有效,那么您还没有将curl安装到MinGW中。对于curl的静态版本,请在命令中省略.dll
扩展名。如果失败,请发布您使用的整个命令行。
**How to make a dll using libcurl. can you share me a sample code.**
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <iostream>
#include <curl/curl.h>
using namespace std; string data; typedef
#ifdef BUILDING_TESTCURL_DLL
#define TESTCURL_DLL __declspec(dllexport)
#else
#define TESTCURL_DLL __declspec(dllimport)
#endif
curl_global_init(CURL_GLOBAL_ALL); //pretty obvious
curl = curl_easy_init();
curl_easy_setopt(curl, CURLOPT_URL, lpURL);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, &writeCallback);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response);
curl_easy_perform(curl);
if (data == "1")
{
//printf("Successfull");
strcpy(Result, "1");
}
v5 = 1;
curl_easy_cleanup(curl);
curl_global_cleanup();
size_t TESTCURL_DLL writeCallback(char* buf, size_t size, size_t
nmemb, void* up) {
for (int c = 0; c<size*nmemb; c++) { data.push_back(buf[c]);
//printf("", buf[c]); } return size*nmemb; //tell curl how many
bytes we handled }