1

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 画像を処理できることに注意してください。

4

2 に答える 2

1

imageplugins (または imageformats) フォルダーをビルドに追加します。jpg を使用するには、実行可能ファイルで libjpeg.dll を使用できる必要があります。必要なファイルについては、Qt のインストール ディレクトリを調べてください。

于 2013-01-15T16:39:48.777 に答える
0

アプリケーションに必要な dll の 1 つが yout PATH 環境変数に見つからない可能性があります。Dependency Walkerを使用して、欠落している dll を検出できます。

于 2013-01-15T17:57:27.450 に答える