問題タブ [application-verifier]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
493 参照

c - Application Verifier がメモリ リークを検出できないのはなぜですか?

Windows 10 Application Verifier、x64 バージョン 10.0.10586 を使用しています。「リーク」を含むすべての「基本」チェックボックスがオンになっています。Application Verifier は、malloc 呼び出しがページの最後でメモリを返すため、興味深いことに、メモリのページ保護ヒープを実装しています。

DLL コード:

メインコード:

出力は次のとおりです。

アプリ検証ツールは、どちらのリークも報告できません。

_CrtDbgFlag 呼び出しを有効にすると、アプリのシャットダウン時にこれも出力することで、実際に malloc がリークしたことを確認できます。

Application Verifier が機能しないのはなぜですか? また、メモリを DLL ではなく main() に割り当てると、リークを見つけることができませんが、それは既知の制限だと思います。

0 投票する
1 に答える
327 参照

c++ - GetExitCodeProcess() は、Application Verifier で初回例外をスローします

CreateProcess() を使用して実行可能ファイルを実行し、最後に GetExitCodeProcess() を呼び出してプロセスの終了コードを取得します。アプリケーション検証ツールで実行すると、初回例外が発生します。ログの写真を添付し​​ました。ここに画像の説明を入力

行番号 1348 は、GetExitCodeProcess() 呼び出しの直後の行です。私はログ形式にあまり詳しくないので、GetExitCodeProcess() 内でスローされた例外を尋ねています。この場合、それを無視できますか、または GetExitCodeProcess への呼び出しの後の行を指しているため、コードで何か間違ったことをしていますか? ()?

編集:私のコード: