MFCにおけるサテライトDLLとDebugモード


abc  2013-07-02 15:55:37  No: 73749

現在、MFCアプリケーションの多言語対応のため、サテライトDLLにリソースを含めようとしています。
Releaseモードではシステムロケールによって対応する言語のサテライトDLLが読み込まれるのですが、Debugモードではなぜか読み込んでくれません。サテライトDLL自体はReleaseモードと同じオプションでビルド出来ているのですが、ビルドしたDLLを何処に置いても読み込んでくれません。
  アプリケーションの実行ファイル名は、Release/Debug共にAppName.exeであり、対応する言語用にAppNameJPN.dllのようなファイル名でサテライトDLLを生成しています。


tetrapod  2013-07-03 03:56:53  No: 73750

正直これだけの内容だと提案できる内容がほとんどない・・・
LoadLibrary してるのであれば GetLastError の値を調べて味噌とか
コピーする際にファイル壊してないかとか
ウイルス対策ソフトが邪魔してないかとか
その程度だと思われる。


abc  2013-07-06 07:10:08  No: 73751

サテライトDLLは、LoadLibraryを使わなくても、DLL事態のファイル名をAppExeNameJPN.dllのようにしておけば読み込まれる決まりになっているはずです。Releaseモードでは読み込まれることから、リソースファイルのロケール等が邪魔しているとも思えません。
ちょっとよくわからないのですが、もし「俺のとこではDebugでも出来てるよ」といった情報でもあれば、比較としてありがたいのでレスいただけると幸いです。


※返信する前に利用規約をご確認ください。








  このエントリーをはてなブックマークに追加