問題タブ [pdb-files]
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.
visual-c++ - DIA SDK get_guid がクラス guid に対して常に Bad ptr(0x000) を返すのはなぜですか?
COM バイナリ (dll/exe) の型とインターフェイスを列挙するために DIA SDK を使用しています。しかし、get_guid は、そのコンポーネント内で使用されるすべてのクラス (CoClass & インターフェイス) に対して常に Bad Ptr(0x0000) を返しますか?
coクラスとインターフェースのpdbからguidを取得できる他の方法。
よろしくウスマン
c++ - DIASDKを使用してC++PDBのクラスのフォルダーを一覧表示します
私はC#でプロファイリングツールに取り組んでいます。DIASDKを使用してC++PDBファイルを分析し、すべてのクラス、関数、フィールドなどを一覧表示します。
クラスのフォルダ名を知りたいのですが、フォルダごとにクラスや関数などを一覧表示します。IDiaSymbolのすべてのプロパティ/関数を確認しましたが、クラスのフォルダー名に何も見つかりませんでした。
DIASDKを使用してC++PDBのクラスのフォルダー名を取得するにはどうすればよいですか?
ありがとう
ラグー
c - SymLoadModuleExをどのように使用してPDBファイルをロードしますか?
SymLoadModuleExPDBファイルからシンボルをロードするために呼び出してSymFromAddrから、そのPDBからシンボルを検索するために使用しようとしています。BaseOfDllただし、パラメータに何を渡すかがわかりませんDllSize。ドキュメントには、PDBファイルをロードするときに、これらのパラメータを0にすることはできないと明示的に記載されており、実際に0を渡そうとすると失敗しERROR_INVALID_PARAMETERます。
私のコードは次のようになります。
PDBファイルをロードするときに何を渡して何を渡すBaseOfDllかをどのように理解しますか?DllSize問題のPDBファイルは別のプログラム実行可能ファイル(DLLではない)のシンボルファイルであり、議論のために、PDBが生成された元のEXEにアクセスできないと仮定します。
または、PDBファイルから特定のアドレスに対応するシンボルを検索するためのより良い方法はありますか?
visual-studio - PDB を使用して、F11 はコードにステップ インしますが、F12 はそれを参照できませんか?
私は Visual Studio にまったく慣れていないので、何か間違ったことをしているのか、それともこれが実際に動作するはずの方法なのかわかりません。
私の「アプリケーション」プロジェクトでは、ソースを持っている DLL への参照を追加しています。pdbファイルもあるフォルダーにdllの参照を追加します。
アプリケーション プロジェクトをデバッグするF11と、dll コードにステップイン () でき、VS は正しい .cs ファイルを開きます。しかし、デバッグしていない場合は、 を押しても..[メタデータから]ウィンドウF12しか開きません。
デバッグしていないときにコードを参照する方法はありますか?
c++ - アセンブリからのユーザーのクラッシュのデバッグ
一部のユーザーが特定の状況で確実にクラッシュすると報告しているソフトウェア アプリケーションを持っています。私が持っているどのマシンでもそれを再現できないので、それを解決する方法についてかなり行き詰まりを感じています.
次のように、ユーザーがクラッシュが発生するアセンブリ ラインを投稿してくれました。
私は Visual Studio 2010 を使用しており、ユーザーに提供したビルド用の .pdbs を持っています。このアセンブリ トレースを障害のあるコード行に変えることはできますか?
c# - オンザフライでロードされる DLL のソース コードをステップ実行するにはどうすればよいですか?
オンザフライでロードされる DLL のソース コードをステップ実行するにはどうすればよいですか? BIN ファイルを Visual Studio 2008 にロードすることによって自動的に作成された SLN があります。これはコマンド ライン インターフェイス機能を使用し、このコマンド ラインで DLL をロードするコマンドを与えることができます。ロードする DLL は、ソース コードからビルドされています。したがって、このソース コードをステップ実行できるはずです。
どうにかして mdb をロードしたり、統合開発環境にソース コードの処理方法を教えたりする必要がありますか? 現在、ソース コードにブレークポイントを配置できません。
.net - PDB ファイルとソースが同期していない
NDepend を使用していくつかのアセンブリを分析しようとしていますが、pdb ファイルとソース ファイルが互いに同期していないというエラーが表示されます。ただし、アセンブリの開発とコンパイルは、NDepend を実行しているサーバーと同じサーバーで行われました。
どうすればこれを修正できますか? 多くの人がグーグルでこの問題を抱えているのを見てきましたが、実際の解決策はありません。また、dev サーバーとは別のサーバー (自動ビルド サーバー) で NDepend を実行することになるため、今後も同じ問題が発生する可能性があります。NDepend のドキュメントを見ると、ソースが保存されている場所へのパスは常に同じでなければなりません (しかし、私はこの規則を破ったことはありません)。
アセンブリの再コンパイルはこれを修正しますか? この問題はどれほど深刻ですか?
ありがとう
.net - 生成中の.pdbファイルをリリースします。なぜですか?
.pdbリリースでコンパイルするときにVisualStudio2005がファイルを生成するのはなぜですか?リリースビルドをデバッグしないのに、なぜそれらが生成されるのですか?
c# - 「現在のドキュメントにシンボルがロードされていません」ASP.NETC#プロジェクト
今度はどうする?
私はVSと、同じ解決策(かつては論理だった場合)が2度ないように見えるこの象徴的なジブリッシュが嫌いです。以下のスクリーンダンプは、それが何を言っているかを示しています。
F5 / Webプロジェクトを開始するとすぐに、ブレークポイントが黄色になります。これは、変更されるaspx.csファイルにのみ影響します。他のaspx.csファイルにはブレークポイントを設定できます。
再構築/ビルドすると、すべてのDLLファイルとPDBファイルが正常に作成されます。それらは同じコンパイル時間を持ち、同じディレクトリにあります。モジュール-WindowsiVSは、シンボルが完全にロードされていると言っています。ええ、ええ、私を噛んでみてください!
これらのaspx.csファイル内で変更を行うまでは、すべてのシンボリックが正常に機能していることがわかります(前回から少し前のことです)。ファイルをリセットして戻すと、ブレークポイントが機能しています。別のファイルに変更を加えようとすると、そこに問題が発生します。
シンボリックファイルジェネレータは、aspx.csファイルで行われた変更を理解していないように見えます。
![Webプロジェクト設定([ビルド]タブ、リリースモード、およびデバッグモード)](https://i.stack.imgur.com/OZgTU.gif)
svn - SrcSrv に含まれる svnindex.cmd スクリプトを取得して、URI エスケープされたスペースを含むソース ファイルのインデックスを作成するにはどうすればよいですか?
最近、シンボル サーバーをセットアップし、ビルド スクリプトにSrcSrvサポートを追加しました。これにより、フィールドからクラッシュ ダンプを簡単にデバッグし、WinDbg や Visual Studio デバッガーが Subversion リポジトリから正しいバージョンのソース ファイルを取得できるようになりました。クラッシュしたアプリケーションの特定のバージョンをコンパイルするために使用されます。
Debugging Tools for Windows パッケージに付属するストック スクリプトを呼び出す行をビルド スクリプトに追加しましたがsvnindex.cmd、このスクリプトはスペースなどの URI エスケープ文字を含むリポジトリ ファイルパスを文字化けすることがわかったので、WinDbg は からファイルをダウンロードできません。リポジトリ。
svnindex.cmd(具体的には、svn.pmそれが開始する Perl スクリプト) は、svn infoコマンドの出力からソース ファイルのリポジトリの場所を取得し、svnリポジトリ パスを URI エスケープすることに注意してください。これsvnindex.cmdに遭遇すると、パスを台無しにします。たとえば、パスをオンにします
の中へ
SrcSrv は、"%" の間のすべてを、実行時に置き換える変数名として解釈することがわかりました。
リポジトリ内のすべてのディレクトリの名前を変更して、URI エスケープされるスペースやその他の「特殊」文字を削除することは不可能であると仮定すると、この制限を回避するにはどうすればよいですか?