プロジェクト

全般

プロフィール

バグ #577

完了

composite を実行すると"Composite.exe [3740] でハンドルされていない Win32 の例外が発生しました"が発生する

匿名ユーザー さんが15年以上前に追加. 15年以上前に更新.

ステータス:
終了
優先度:
通常
担当者:
-
対象バージョン:
-
開始日:
2009/04/27
期日:
進捗率:

100%

予定工数:

説明

  • 現象:
    windows 版の examples の Composite を実行すると、"Composite.exe [3740] でハンドルされていない Win32 の例外が発生しました"が発生する。
    conf ファイルで preload を指定すると発生する。

匿名ユーザー さんが15年以上前に更新

  • ステータス新規 から 終了 に変更
  • 進捗率0 から 100 に変更
  • 原因 :
    LoadLibraryEx の引数 (dwFlags) で DONT_RESOLVE_DLL_REFERENCES を指定していたために発生していた。
    DONT_RESOLVE_DLL_REFERENCES を指定した場合、指定したモジュールが参照する実行可能モジュールをシステムが補足的にロードすることがない。
    coil::DynamicLib::open のデフォルト設定が DONT_RESOLVE_DLL_REFERENCES 。
    そのため、RTM で open をデフォルトでコールすると必要な dll がロードされず発生する。
  • 対策 :
    coil::DynamicLib::open のデフォルトを DONT_RESOLVE_DLL_REFERENCES から LOAD_WITH_ALTERED_SEARCH_PATH に変更。
  • ビルド確認 :
    Windows-XP-VC2005-i386,Windows-Vista-VC2008-i386 で問題なくビルドできることを確認。
  • composite 動作確認:
    Windows-XP-VC2005-i386,Windows-Vista-VC2008-i386 で問題なく動作することを確認。

他の形式にエクスポート: Atom PDF