Jpeg在发布版本中使用QImage读取错误

时间:2013-01-15 15:21:40

标签: c++ qt load jpeg qimage

在尝试加载jpeg图像时,是否有人在使用Qt和QImage的类加载方法时遇到问题。使用QtCreator时,加载在调试模式下完美运行,但在构建应用程序时尝试加载相同的jpeg图像,然后在发布模式下运行时,完全失败。

QImage myImage;
QString s = QDir().toNativeSeparators(QFileDialog::getOpenFileName(this, QString("Import Image...")));
if ( !myImage.load(s) ) {
    QMessageBox msgBox;
    msgBox.setWindowTitle(this->windowTitle());
    msgBox.setWindowIcon(this->windowIcon());
    msgBox.setIcon(QMessageBox::Information);
    msgBox.setText("Image could not be loaded.");
    msgBox.exec();
    return;
}

我已经得出结论我可能错过了一个特定的动态链接库,但无法预见它会是哪一个。请注意,在发布模式下,我仍然可以处理PNG图像。

2 个答案:

答案 0 :(得分:1)

将imageplugins(或imageformats)文件夹添加到您的构建中。使用jpg需要libjpeg.dll可用于可执行文件。在Qt安装目录下查找所需的文件。

答案 1 :(得分:0)

在您的PATH环境变量中找不到应用程序所需的其中一个dll。您可以使用Dependency Walker来发现缺少哪些dll。