最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

Windows环境编译和使用qrencode

业界 admin 1浏览 0评论

Windows环境编译和使用qrencode

Libqrencode是一个快速而紧凑的库,用于编码QR Code符号中的数据,QR Code符号是一种2D符号,可以由手持终端(如带有CCD的手机)扫描。二维码的容量最高可达7000位或4000个字符,具有很强的鲁棒性。

Libqrencode接受字符串或数据块列表,然后将QR Code符号编码为位图数组。当其他QR Code应用程序生成图像文件时,使用libqrencode允许应用程序直接从原始位图数据呈现QR Code符号。此库还包含一个命令行实用程序,用于输出各种格式的二维码图像。

本文将介绍在Windows环境编译和使用qrencode。

一、cmake编译qrencode源码

下载libqrencode源码

下载地址:https://fukuchi/works/qrencode/

解压源码并建立build文件夹

编译静态库(.lib)

1、打开cmake-gui

2、选择源码目录

3、选择build目录

4、Configure

首次Configure会提示错误:

点击OK后,取消勾选WITH_TOOLS,不进行tools编译

重新Configure

5、Generate

cmake编译完成后,在build目录下生成Visual Studio的工程文件

6、双击QRencode.sln,打开VS工程


7、Release编译

在”解决方案任务管理器“选择ALL_BUILD生成

编译完成后在build\Release目录下可以找到生成的lib库

编译动态库(.dll)

编译动态库的流程和编译动态库时一样,只是在cmake Configure的时候勾选BUILD_SHARED_LIBS选项,最终就可以生成dll了。

最终生成的动态库:

二、使用Visual Studio调用libqrencode生成二维码

新建一个VS控制台新项目qrtest

建立项目后建立demo.cpp作为主程序文件,拷贝qrencode.h到工程目录,配置依赖qrencode.lib。

代码

#include "qrencode.h"

typedef unsigned short  WORD;
typedef unsigned long   DWORD;
typedef signed long     LONG;

#define BI_RGB          0L

#pragma pack(push, 2)
typedef struct
{
   
    WORD    bfType;
    DWORD   bfSize;
    WORD    bfReserved1;
    WORD    bfReserved2;
    DWORD   bfOffBits;
} BITMAPFILEHEADER;

typedef struct
{
   
    DWORD      biSize;
    LONG       biWidth;
    LONG       biHeight;
    WORD       biPlanes;

Windows环境编译和使用qrencode

Libqrencode是一个快速而紧凑的库,用于编码QR Code符号中的数据,QR Code符号是一种2D符号,可以由手持终端(如带有CCD的手机)扫描。二维码的容量最高可达7000位或4000个字符,具有很强的鲁棒性。

Libqrencode接受字符串或数据块列表,然后将QR Code符号编码为位图数组。当其他QR Code应用程序生成图像文件时,使用libqrencode允许应用程序直接从原始位图数据呈现QR Code符号。此库还包含一个命令行实用程序,用于输出各种格式的二维码图像。

本文将介绍在Windows环境编译和使用qrencode。

一、cmake编译qrencode源码

下载libqrencode源码

下载地址:https://fukuchi/works/qrencode/

解压源码并建立build文件夹

编译静态库(.lib)

1、打开cmake-gui

2、选择源码目录

3、选择build目录

4、Configure

首次Configure会提示错误:

点击OK后,取消勾选WITH_TOOLS,不进行tools编译

重新Configure

5、Generate

cmake编译完成后,在build目录下生成Visual Studio的工程文件

6、双击QRencode.sln,打开VS工程


7、Release编译

在”解决方案任务管理器“选择ALL_BUILD生成

编译完成后在build\Release目录下可以找到生成的lib库

编译动态库(.dll)

编译动态库的流程和编译动态库时一样,只是在cmake Configure的时候勾选BUILD_SHARED_LIBS选项,最终就可以生成dll了。

最终生成的动态库:

二、使用Visual Studio调用libqrencode生成二维码

新建一个VS控制台新项目qrtest

建立项目后建立demo.cpp作为主程序文件,拷贝qrencode.h到工程目录,配置依赖qrencode.lib。

代码

#include "qrencode.h"

typedef unsigned short  WORD;
typedef unsigned long   DWORD;
typedef signed long     LONG;

#define BI_RGB          0L

#pragma pack(push, 2)
typedef struct
{
   
    WORD    bfType;
    DWORD   bfSize;
    WORD    bfReserved1;
    WORD    bfReserved2;
    DWORD   bfOffBits;
} BITMAPFILEHEADER;

typedef struct
{
   
    DWORD      biSize;
    LONG       biWidth;
    LONG       biHeight;
    WORD       biPlanes;
发布评论

评论列表 (0)

  1. 暂无评论