私のアプリケーションはVC6sp6でコンパイルされ、DBGHelp.libを使用してスタック情報を取得します。コードは、デバッグとリリースのコンパイルで類似しています。問題は、デバッグバージョンを実行するときに、DBGHelp.dllがmsvcrt.dll(リリースバージョン)をロードすることです。msvcrtd.dllは、とにかく私のデバッグリンクによってすでにロードされています。そのため、デバッグバージョンのプロセスにmsvcrtd.dllとmsvcrt.dllの両方が含まれることになります。dspはデフォルトのライブラリをロードするように設定されており、msvcrt(d).libは直接言及されていません。DBGHelp.dllを使用するコードを取り出し、dspリンクリストからDBGHelp.libを削除すると、msvcrt.dllがロードされません。
これを修正するにはどうすればよいですか?
デバッグの実行にはmsvcrtd.dllのみが必要です。
デバッグ用の特別なバージョンのDBGHelp.dll(msvcrtd.dllを使用する)はありますか?