Visual Studio(VS2017)編譯並使用curl C/C++ HTTP GET POST libcurl(二、調用示例)

承接各類STM32項目、JAVA、C++、Android、微信、Linux,畢業設計開發
手機:18559979152(微信同號)

一、編譯  Visual Studio(VS2017)編譯並使用curl C/C++ HTTP GET POST libcurl

二、調用示例  Visual Studio(VS2017)編譯並使用curl C/C++ HTTP GET POST libcurl

上篇講了怎麼編譯curl,這篇講怎麼簡單調用編譯生成的curl庫

一、新建VC工程

打開Visual Studio 2017 菜單->新建->新建項目

我選擇的是MFC應用,如果只是測試,選擇命令行應用也可以

下一步,應用程序類型->基於對話框,其它默認

下圖是創建好工程的樣子,可以先編譯運行一下

二、導入頭文件

先將上篇生成的庫複製到此項目的文件夾中,如下圖:

如果是項目工程有多個其它庫包含的話,最好把這兩個目錄重命名一下,例如改成Curl_inc和Curl_lib(後面配置需要跟着改)

我只是測試,所以就不改名字了

三、工程配置

打開項目->屬性頁

1、配置選擇Release,平臺選擇x64,這裏的選擇是因爲上篇編譯庫時的配置參數是Release,x64,如要debug或x86,請根據上篇重新編譯,這裏選擇對應配置。

2、把.h和lib包含到工程

選擇左邊VC++ 目錄,在右邊包含目錄添加$(ProjectDir)\include;,庫目錄添加$(ProjectDir)\lib,$(ProjectDir)是項目目錄的變量,在這個項目的值就是:<D:\123\MFCApplication1\MFCApplication1>,這樣即使移動工程到不同文件夾也不會受影響

3、本項目靜態編譯,所以需要將CURL_STATICLIB添加至工程。選擇C/C++->預處理器->預處理器定義:添加CURL_STATICLIB

4、添加其它需要的庫

鏈接器->輸入->附加依賴項:添加libcurl_a.lib;Ws2_32.lib;Wldap32.lib;winmm.lib;Crypt32.lib;Normaliz.lib;

四、測試運行

1、添加curl頭文件

2、添加簡單示例代碼進行測試

在OnInitDialog()中添加代碼

    // TODO: 在此添加額外的初始化代碼
    printf("test printf %s\r\n", "abc123");

    CURL *curl = nullptr;
    CURLcode res;
    curl = curl_easy_init();
    if (curl != nullptr) {
        curl_easy_setopt(curl, CURLOPT_URL, "http://www.baidu.com");
        /* example.com is redirected, so we tell libcurl to follow redirection */
        curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
        /* Perform the request, res will get the return code */
        res = curl_easy_perform(curl);
        /* Check for errors */
        if (res != CURLE_OK) {
            fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
        }
        /* always cleanup */
        curl_easy_cleanup(curl);
    }
編譯運行後如下圖,請求的是我們公司網關固件更新信息API,也可以直接請求百度,CSDN等網址來測試

關於MFC調用CMD命令行窗口打印輸出請查看我的另一篇文章

Visual Studio 2017 VC項目設置 printf 輸出到 Console 窗口調試

Curl官網還準備了其它不同的應用示例,大家可以去下載查看

https://curl.haxx.se/libcurl/c/example.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章