一、所需平台及软硬件环境
1:平台环境
安装有Linux虚拟机或者纯系统的PC一台。
2:软件环境
(1)Linux系统有安装QT开发环境。
(2)有lib5103A_EK.so库文件。
3:硬件环境
LKT5103A加密狗一个。
二、步骤说明
1:创建一个QT工程。
2:加载动态库。
和在Windows下调用dll一样。用 QLibrary mylib("/home/……/libxxx.so")的方式。
注意:此处填写绝对路径,不能使用当前路径(./)的方式。
eg:
QLibrary *mylib = NULL;
mylib=newQLibrary("/mnt/hgfs/share/LKT5103Ademo/LKT5103A-demo/lib5103A_EK.so");
3:调用so库中的函数。以连接接口”LKSC_Open”为例,接口定义如下表所示:
eg:
//定义函数指针
typedef int(* open_fun)(char *SC_Path,int *SC_Handle);
//resolve得到库中函数地址
open_fun Open1=(open_fun)mylib->resolve("LKSC_HOpen");
if(!Open1)
{
ui->textBrowser->textCursor().insertText("load function LKSC_Open Error!\n");
}
//调用so库中的”LKSC_Open”函数
res=Open1(path,&fd);