【发布时间】:2018-12-27 15:18:36
【问题描述】:
我需要将 OpenCV 包含到我的程序中,所以经过很长时间,我放弃在 mingw 上设置它(这对我的程序来说是完全可用的)并安装了 MSVC17 编译器和调试器。但是当我使用 MSVC 运行我的应用程序时,程序会因0x0000005 code, access violation on 0xfffffff 而崩溃。
它总是在 main.cpp
中的app.exec() 上崩溃
int main(int argc, char *argv[])
{
QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QGuiApplication app(argc, argv);
MyClass myClass;
myClass.getView()->setMinimumWidth(900);
myClass.getView()->setMinimumHeight(600);
QQuickWindow *quickWindow = qobject_cast<QQuickWindow *>(myClass.getView());
quickWindow->setFlags(Qt::FramelessWindowHint);
//Connecting signal from QML to exit application
QObject::connect(myClass.getView()->engine(), SIGNAL(quit()), &app, SLOT(quit()));
quickWindow->show();
return app.exec(); //Here it crash
}
正如我所说,它完全适用于 mingw(32 位)。
在构建以前由 mingw x32 使用的应用程序时,MSVC2017 x64 会以某种方式崩溃吗?有人知道怎么解决吗?
非常感谢!
//编辑:
不知何故,它适用于发布,但不适用于调试模式。
//编辑:
只有当应用程序显示可见的 QML 对象时才会崩溃
【问题讨论】:
标签: c++ qt visual-c++ mingw