qt写的dll为什么没有def文件
答案:1 悬赏:0 手机版
解决时间 2021-04-06 20:53
- 提问者网友:半生酒醒
- 2021-04-06 06:38
qt写的dll为什么没有def文件
最佳答案
- 五星知识达人网友:低音帝王
- 2021-04-06 07:42
Qt提供了一个 QLibrary 类供显示调用。下面给出一个完整的例子:
testDLL.dll为自定义的dll文件,将其复制到程序的输出目录下就可以调用。
#include
#include
#include
#include
typedef int (*Fun)(int,int); //定义函数指针,以备调用
int main(int argc,char **argv)
{
QApplication app(argc,argv);
QLibrary mylib("testDLL.dll"); //声明所用到的dll文件
int result;
if (mylib.load()) //判断是否正确加载
{
QMessageBox::information(NULL,"OK","DLL load is OK!");
Fun open=(Fun)mylib.resolve("add"); //援引 add() 函数
if (open) //是否成功连接上 add() 函数
{
QMessageBox::information(NULL,"OK","Link to Function is OK!");
result=open(5,6); //这里函数指针调用dll中的 add() 函数
qDebug()< }
else
QMessageBox::information(NULL,"NO","Linke to Function is not OK!!!!");
}
else
{
QMessageBox::information(NULL,"NO","DLL is not loaded!");
return 0; //加载失败则退出
}
}
testDLL.dll为自定义的dll文件,将其复制到程序的输出目录下就可以调用。
#include
#include
#include
#include
typedef int (*Fun)(int,int); //定义函数指针,以备调用
int main(int argc,char **argv)
{
QApplication app(argc,argv);
QLibrary mylib("testDLL.dll"); //声明所用到的dll文件
int result;
if (mylib.load()) //判断是否正确加载
{
QMessageBox::information(NULL,"OK","DLL load is OK!");
Fun open=(Fun)mylib.resolve("add"); //援引 add() 函数
if (open) //是否成功连接上 add() 函数
{
QMessageBox::information(NULL,"OK","Link to Function is OK!");
result=open(5,6); //这里函数指针调用dll中的 add() 函数
qDebug()<
else
QMessageBox::information(NULL,"NO","Linke to Function is not OK!!!!");
}
else
{
QMessageBox::information(NULL,"NO","DLL is not loaded!");
return 0; //加载失败则退出
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯