掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
リリースモードでCImageが壊れます… (ID:61084)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
複数のデータファイルを読み込んできて内部で画像を作り、CImageを通して吐き出すプログラムを組んでいます。 データファイル読み込み部分は、コモンダイアログで行っており、 OFN_FILEMUSTEXIST | OFN_HIDEREADONLY | OFN_EXPLORER | OFN_ALLOWMULTISELECT をオプションにつけて複数ファイルに対応しています。 デバッグモードで行うと問題ないのですが、リリースモードにした場合、読み込みファイルが十数個になった辺りで唐突にCImageがエラーを起こします。 (十個以内程度であれば、やはり問題なく動作しています) エラーが出るのは、CImage.Save()で、返り値にたどり着く以前に落ちてしまっています。 具体的にはCImage::CInitGDIPlus::ReleaseGDIPlus()関数内の EnterCriticalSection(&m_sect); のm_sectがとれずにアクセス違反になっています。CImageのインスタンス自体は存在しているのですが、複数ファイルを読み込んだ瞬間にビットマップの中身が0になることがあるため、壊れているのではないかと思われます。 デバッグモードとリリースモードでは実行速度が10倍くらい違うので、できればリリースモードの速度がほしいです。 何か情報お持ちの方、アドバイス等お願いします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.