QT-第三方回拨未回拨
QT - 3rd Party Callback Not Calling back?
我为正在使用的第三方库创建了一个测试应用程序,它编译得很好,但似乎从未达到__stdCall WriteDone。
从示例代码来看,它看起来像这个函数
if(cmcd->BuildISOImage(isoName, &CMCDBurner::WriteDone, NULL) == TRUE)
{
qDebug() << "inside build iso";
}
调用此代码,但据我所知,它从未出现在这里。
void __stdcall CMCDBurner::WriteDone(int DeviceId, bool Failed, void *arg)
{
qDebug() << "inside write done.";
}
这是整个测试应用
#include <QCoreApplication>
#include "Windows.h"
#include "MCDBcls.h"
#
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
char* cdDestination = "\";
char* isoName = "C:\LinearSystems\AVCommand\ISO\aviso.iso";
CMCDBurner* cmcd = new CMCDBurner();
cmcd->ClearAll();
cmcd->InsertFile(cdDestination, "C:\DLS\Interviews\Test_001\20130515-87701\interview.xml" );
int c = cmcd->Prepare();
int b = cmcd->GetFilesCount();
if(cmcd->BuildISOImage(isoName, &CMCDBurner::WriteDone, NULL) == TRUE)
{
qDebug() << "inside build iso";
}
return a.exec();
}
void __stdcall CMCDBurner::WriteDone(int DeviceId, bool Failed, void *arg)
{
qDebug() << "inside write done.";
}
我刚刚意识到您尝试为类CMDCDBurner
定义WriteDone函数。尝试将函数移到主方法前面,并省略CMDCDBurner::
:
void __stdcall WriteDone(int DeviceId, bool Failed, void *arg)
{
qDebug() << "inside write done.";
}
相关文章:
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 为什么我的C#代码在调用回C++COM直到Task时会暂停.等待/线程.加入
- 没有为自己的结构调用列表推回方法
- 架构决策:返回std::future还是提供回调
- 正在为Xtensa simcall函数编写回调函数
- C++:正在检查LinkedList中的回文-递归方法-错误
- 当系统的卷被修改时,如何修改WASAPI环回捕获卷
- 如何在C++中使用非静态成员函数作为回调函数
- 存储模板类型以强制转换回派生<T>
- 我是否需要在下一次转移时将所有权*转移回转移队列
- Usaco第1.6节主要回文
- 如何包装第三方DLL在R中使用
- FLTK:按下哪个按钮 - 将数字传递给按钮的回调 (lambda)
- 超级强大的AndroidAudioIO环回,仅输出到左耳
- 当服务中的事件被触发时,如何将响应从服务发送回客户端?
- "Ref* pSender"在回拨功能中做什么?
- Boost Asio和Co_await-与任何第三方回调一起使用
- QT-第三方回拨未回拨
- 如何在第三方库调用的回调函数中传递/使对象/变量可访问
- 来自第三方静态库的回调中出现未捕获的异常