1

我正在尝试在带有 Qt 扩展的 Visual Studio 上以发布模式运行一个简单的模板。到目前为止,我一直在调试模式下运行项目(从来没有遇到过麻烦)。最近,我开始使用webengine它的小部件的浏览器应用程序,但它在调试模式下非常慢,所以。在继续之前,我想确保可以以更高的性能运行(在发布模式下)。

我很惊讶,因为该应用程序在尝试运行后会依次抛出 4 个错误消息弹出窗口:

  • 程序入口点?endl@QTextStreamFunctions@@YAAEAVQTextStream@@AEAV2@@Z在动态链接库C:\Qt\5.14.1\msvc2017_64\bin\Qt5WebChannel.dll中找不到。

  • 无法在动态链接库 C:\Qt\5.14.1\msvc2017_64\bin\Qt5WebChannel.dll 中找到过程入口点 ?argToQString@QQtPrivate...QString...QStringView...。

  • QDebugQRhiDepthStencilClearValue还有两个类似的。

所以相反,我尝试编译一个简单的项目(直接 QtWidgetsApplication 模板),它给了我这个:

此应用程序无法启动,因为无法初始化 Qt 平台插件。重新安装应用程序可能会解决此问题。

我一直在寻找解决方案很长一段时间,但我没有找到明确的答案。

我的目录:C:\Qt\5.14.1\msvc2017_64

我的模板代码:

#include "QtWidgetsApplication2.h"
#include <QtWidgets/QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QtWidgetsApplication2 w;
    w.show();
    return a.exec();
}
#pragma once

#include <QtWidgets/QMainWindow>
#include "ui_QtWidgetsApplication2.h"

class QtWidgetsApplication2 : public QMainWindow
{
    Q_OBJECT

public:
    QtWidgetsApplication2(QWidget *parent = Q_NULLPTR);

private:
    Ui::QtWidgetsApplication2Class ui;
};
#include "QtWidgetsApplication2.h"

QtWidgetsApplication2::QtWidgetsApplication2(QWidget *parent)
    : QMainWindow(parent)
{
    ui.setupUi(this);
}

我不知道如何解决这个问题。你能帮帮我吗?提前致谢!

4

1 回答 1

0

看看是否有帮助。

您是否尝试通过双击 .exe 来启动程序?我试图重现它:

  • 在发布模式下构建一个简单的项目
  • 运行windeployqt ...并删除生成的文件夹./platforms
  • 双击 .exe 运行它。

并提示您收到的错误消息。

于 2020-07-16T13:23:53.807 回答