vld.h、vld.lib、vld_x86.dll を Visual Studio 2010 の Win32 プロジェクトに含めました。正しくビルドされますが、実行すると次のメッセージが表示されてクラッシュします。
"The application was unable to start correctly (0xc0150002). Click OK to close the application."
Dependency Walker で実行しましたが、次のようにサイド バイ サイド エラーが表示されます。
Error: The Side-by-Side configuration information for "D:\project\..\debug\VLD_X86.DLL" contains errors. The application has failed to start because its side-by-side configuration is incorrect.)
ここで提案されているように、マニフェストをいじるなど、さまざまな方法を試しました。
https://vld.codeplex.com/discussions/360243
vld.h の次の行にコメントを付けた場合にのみ、適切に実行されます
// Force a symbolic reference to the global VisualLeakDetector class object from
// the DLL. This ensures that the DLL is loaded and linked with the program,
// even if no code otherwise imports any of the DLL's exports.
//#pragma comment(linker, "/include:__imp_?g_vld@@3VVisualLeakDetector@@A")
ただし、その行をコメントアウトすると、vld は何も出力しません (vld 統合がない場合と同様)。
以前にこの問題を抱えている人はいますか?事前に感謝します。