問題タブ [visual-leak-detector]
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.
c++ - ビジュアルリークディテクターが起動できません
かなり古い MFC プログラムで大量のメモリ リークが発生しています。問題の場所を把握するために、ビジュアル リーク ディテクターを使用したいと考えていました。VLD v2.4rc2 をダウンロードしてインストールしました。インクルード パスとライブラリ パスは、VS 2010に自動的に追加されます。しかし、アプリケーションを起動すると、以下のエラーが表示されます。
同じ質問がここで尋ねられ、提案された解決策は、ファイルを VLD の bin フォルダーにコピーすることでした。
Microsoft.DTfW.DHL.manifest
dbghelp.dll
ファイル Microsoft.DTfW.DHL.manifest がどこにも見つからず、dbghelp.dll に関しては、このファイルの多くの場所とバージョン (System32、Programfiles/VS、Syswow64 など) が見つかります。
利用可能なすべてのdbhhelp.dllファイルをコピーしようとしました。しかし、状況は同じままです。64ビットアプリケーションを使用しています。この問題を解決する方法を教えてください。
c++ - Visual Leak Detector + CFileDialog = アプリのハング
VLD 2.4.0 を使用して、MFC x64 アプリでメモリ リークを検索しています。
CFileDialog を開こうとすると、CFileDialog が表示されるのを待つだけでアプリケーションがハングします (これは決して起こりません)。
コードに VLD ヘッダーを含めない場合、CFileDialog は期待どおりに動作します。これが私のコードです:
私にとって、これはかなり大きな問題です。なぜなら、それが私が自分のアプリにデータを入力する方法であり、メモリ リークについて他のアルゴリズムをテストできるからです。
VLD を CFileDialog と一緒に使用できるようにするための解決策はありますか?
c++ - Visual Leak Detector (VLD) が空のコール スタックを表示する
視覚的リークディテクターを使用しています。一部のリークに対してコール スタックが適切に表示されますが、次のようにコール スタックが空であるという出力が得られます。
このような問題を追跡する方法がわかりません。
どんな助けでも大歓迎です。
c++ - (VS15 C++) Visual Leak Detector のレポートを入手しましたが、次はどうすればよいでしょうか?
私の C++ プロジェクトに (奇妙な) 問題があったため、Visual Leak Detector を (初めて) 使用して、プロジェクトのメモリ リークをチェックしました。だから私は以下のレポートを得ました:
残念ながら、私には理解できません。VLD が言いたいことは問題です。「f:\dd...」行をダブルクリックすると、コーサーが問題のある行に設定されるはずですよね? しかし、そうではありません。
私の質問は次のとおりです。問題の領域に到達するにはどうすればよいですか、つまり、「これらのレポートをどのように読むか」ということです。
加えて:
- Visual Studio 2015 を使用しています
- プロジェクトは C++ Windows フォーム プロジェクトです
- vld.h を追加インクルードに含め、lib-directory をプロジェクトの追加ライブラリに含めました。
- 私はと
main()
を使用#include <vld.h>
し_CrtDumpMemoryLeaks()
ます。
編集:
My Main (縮小版ですが、同様のレポートが得られます):
残念ながら、投稿したくないクラスが約40あります...
c++ - これらの C++ コンパイル エラーを解決するにはどうすればよいですか?
Visual Studio ソリューションをコンパイルしようとしています。ソースファイルは問題ないと思います。一連のコンパイル エラーが発生しています。
Visual Studio が新しくインストールされました。ソリューションを開いてビルドを実行すると、エラーが発生しました。Project にアクセスしたところ、不足している機能が多数あることに気付きました。私はそれらをインストールしました: -
次に、ソリューションを構築しようとしましたが、それを通知するエラーを受け取りました
私はこれを調査し、これがVisual Leak Detectorを参照していることを突き止めました
私はそれをインストールしました。現在、エラーは少なくなりましたが、何百もの警告に直面しています。今のところあまり気にしていない警告。しかし、物事を前進させるために、エラーを解決しようとしています。
私が今得ているエラーは次のとおりです。
まず:-
文字列ファイル (これらのエラーが含まれています) では、エラーの原因となっているコードの部分を次に示します。
上記の次の 3 行は、特にコンパイラによるとエラーになります。
ただし、これは Microsoft のインクルードであり、C++ の基礎クラスから直接作成されたものであるため、このエラーが発生する理由がわかりません。
第二に
このエラーが発生しています。
上記を簡単にするために、パス名を「プロジェクト パス」に短縮しました。
上記の 3 つのコンポーネントと VLD をインストールしたので、アイデアが尽きてしまいました。
最後のエラーは、リリース ディレクトリの .lib を参照しているため、おそらく上記の最初のエラーが原因で、.lib ファイルがコンパイルの初期段階で作成されていない可能性があると思います。しかし、よくわかりません。
これらのコンパイル エラーを克服する方法を教えてください。
- ありがとう
c++ - Visual Leak Detector は、crtdbg と比較してリークを出力しません
この質問をよく検索しましたが、まだ解決策を見つけることができました。
最近、VLD 2.5 をダウンロードし、Visual Studio 2013 と 2015 の両方でゼロからコンパイルしました。プロジェクトで使用する前に、パッケージで提供されるテストを実行すると思いました。しかし、すべてのテストは失敗します。
https://vld.codeplex.com/workitem/10617で報告されたすべてのテスト スイートで同じ動作
ここでのポイントは次のとおりです。CRT はリークを検出しますが、アプリケーションによって割り当てられた CString オブジェクトは検出されますが、VLD は検出しません。
何が欠けていますか?