問題タブ [symstore]

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 に答える
1043 参照

windows - .pdb ディレクトリをもう使用しない場合、シンボル ストレージから削除しても安全ですか?

私のローカル シンボル ストレージ ディレクトリには、消去したい (未使用だと思われるため) または別のディレクトリに移動したいファイルがたくさん含まれています。AgeStoreSymStoreを使用してシンボル ストレージをトリミングできることは知っていますが、どちらもシンボル ストレージから特定のファイルの情報を削除するユース ケースをサポートしていないようです。

私のローカルシンボルストレージは次のようになります

のようなディレクトリとその下のすべてを完全に削除するだけで安全vc60.pdbですか、それともシンボルストレージからのシンボル/バイナリのフェッチを中断しますか?

0 投票する
2 に答える
1770 参照

c++ - symstore.exe を使用すると、Windbg または Visual Studio でミニダンプのシンボルを読み込めません

Windows 8 ユーザー マシンでのみ発生する Qt でのクラッシュを追跡するために、クラッシュ ダンプのデバッグに使用するローカル シンボル サーバーをセットアップしました。

最初に、次のフラグを設定して完全なビルドを行いました。

そして、Windows インストーラーと VS 展開プロジェクトを使用してインストーラーを構築しました。次に、次の symstore.exe コマンドを実行しました。

C:\Program Files (x86)\Windows Kits\8.1\Debuggers\x64>symstore.exe add /r /f C:\builddir\*.* /s "C:\Users\Sam\symbols" /t "Application" /v "rev xxxx" /c "test add"

これにより、適切な dll、exe、および pdb フォルダーが 内に作成されましたC:\Users\Sam\symbols

次に、ユーザー マシンにインストールし、Process Explorer を使用してミニダンプ ファイルを生成しました。ダンプを Visual Studio に読み込みC:\Users\Sam\symbols、シンボル ファイルの場所に追加しようとしましたが、バイナリに一致するシンボルが見つかりませんでした。

次に、WinDbg64 (これは 64 ビット アプリケーションです) にロードしようとしました。!sym noisyでシンボルパスを設定し、.symfix C:\Users\Sam\symbolsでリロードしまし.reload /fた。これも成功せず、ロードされたシンボルのみをエクスポートしました。例えば:

これはすべてのモジュールで発生しますが、Qt コンポーネントは通常のビルドの一部としてビルドされず、シンボル フォルダーを pdb ファイルを直接含む lib フォルダーに設定しても役に立たないため、Qt コンポーネントではまったく期待できません。

ChkMatch.exe次に、シンボル ストア内の実行可能ファイルと pdb ファイルに対して実行を試みました。実行可能ファイルの署名は、pdb が含まれているフォルダーと一致し、それらが一致する必要があることを示していましたが、次のエラーが発生しました。

ChkMatch.exeのため、インストールされた実行可能ファイルに対して再度実行しましたが、同じ署名と同じエラーが発生しました。

編集:symopt+0x40署名GUIDをあまり詳しくチェックせずに、とにかくWinDbgにpdbを使用させる 設定を試みました。ただし、まだ何もロードされていません。余分な出力:

のフォルダーにC:\Users\Sam\symbols\QtGui4.dllは名前4AA92D1B712000があり、正しい dll であるべきものが含まれています。

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

c++ - シンボル サーバーを移動またはバックアップする方法

次のコマンドを使用して、ビルドのシンボルをローカル マシンに保存しています。

call "C:\Program Files (x86)\Windows Kits\8.1\Debuggers\x64\symstore.exe" add /r /f .\*.* /s "C:\Users\Sam\symbols" /t "Application" /v "rev %SVN_REVISION%" /c "adding revision %SVN_REVISION%"

これは、クラッシュをデバッグするために、これまでのところ正常に機能しています。ただし、中央サーバーで他の人がこれらを利用できるようにしたいので、このシンボルサーバーを移動する方法を知る必要があります。フォルダーをコピーするだけでは機能しません。ドキュメントにはいくつかの例がありますが、シンボルへのポインターの移動と指定された例を扱っているようです。

symstore add /y \\hubserver\hubshare\myindex.txt /g \\myarchive\appserver /s \\sampledir\symsrv /p /t "Large Application" /v "Build 432" /c "Sample Add from Index"

すべてを移動したいときに単一のエントリを移動するためのものです。

私はこの構文を次のように推測してみました:

"C:\Program Files (x86)\Windows Kits\8.1\Debuggers\x64\symstore.exe" /g C:\Users\Sam\symbols /s \\public\symbols

しかし、これは認識されたコマンドではありませんでした。

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

debug-symbols - Microsoft Symbol Server から Google Breakpad に移行するにはどうすればよいですか?

何か問題が発生した場合に備えて、当社の製品はミニダンプ ファイルを生成します。ダンプ ファイルから適切なスタック トレースを取得できるように、ビルドのデバッグ シンボルを格納およびアクセスするためにシンボル サーバーを実行します。

私たちの製品は他のオペレーティング システム (特に Linux と OS X) でも動作するため、Google ブレークパッドを検討し始めました。私もミニダンプとストレージ用の PDB ファイルを使用しているようです。しかし、私は疑問に思います:

(どのように) 既存のすべてのシンボルを失わないように、既存のシンボル サーバーを Google ブレークパッドに移行できますか? 他の人がすでに同じ動きをしていると思いますが、これには共通のアプローチがあるのではないでしょうか?

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

svn - ssindex / svnindex の使用が失敗する:「ディレクトリを解決できません」

コマンドを使用して、SVN リポジトリでシンボル ファイルのインデックスを作成しようとしています。

svnindex /debug /source=c:\crash /symbols=c:\crash\release

私が何をしようとしても、私はいつも得ます:

c:\crash には、ローカル ドライブ (d:\Repo_Crash) の SVN リポジトリにある単純な MFC デモ プログラムが含まれています。ActivePerl-5.20.2.2002-MSWin32-x86-64int-299195 と WDK8.1 のスタンドアロン デバッグ キットをインストールしました。C:\Program Files (x86)\Windows Kits\8.1\Debuggers\x86\srcsrv へのパスを設定します。SVN バージョンは 1.9.0 (r1692801)

ファイル svn.pm を見ると、次の部分 (126 行目) が常に失敗していることがわかります。

そのため、その警告メッセージが表示されてから戻ります。

ここで何が間違っているのですか?

ps:私は地獄のようにグーグルで検索しましたが、関連するものは何も見つかりませんでした

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

windows - SymStore - 複数のファイルを追加

.pdbを使用して、一連のファイルをシンボル サーバーに追加しようとしていますsymstore.exe。ディレクトリ内のすべてではなく.pdb、それらの選択 (日付に基づく)。

コマンドラインのヘルプにあるように、私が使用している単一のトランザクションでそれらを追加するにsymstore ... /f '@filelist.txt'は、行ごとfilelist.txtに実際のファイルを含むファイルを使用します。.pdb

(この情報は、 のコマンドライン ヘルプにのみ存在symstoreし、対応するオンラインヘルプ ページには存在しません。)

これは機能しません。保存するファイルは0です。ファイルリストから複数のファイルを追加するこの機能は、実際には実装されていないと思います。

を使用して、単一のトランザクションでファイルのリストを追加することに成功した人はいますsymstore.exeか?

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

c++ - Symstore は関連付けられたフォルダーを削除しません

ネットワーク ドライブのシンボル ストアを使用して、アプリケーションのデバッグ シンボルを収集します。シンボルは、Visual Studio に読み込まれたクラッシュ ダンプ ファイルのデバッグ中に使用されます。「古い」バージョンのシンボルの削除を管理する Powershell スクリプトを配置しています。というか、そう思いました。最近、別のスクリプトを作成しているときに、symstoreを使用してシンボルを削除しても、実際には何も削除されないことに気付きました。symstore を使用してシンボルを削除すると、たとえば 000Admin フォルダーに「0000000161.deleted」ファイルが表示されます。このファイルには、関連するデバッグ シンボルのエントリが含まれています。次のようなエントリが含まれています。

上記の最初のエントリは、「Aggregat」モジュールに関連付けられたデバッグ シンボルのフォルダーです。トランザクション ID を使用してシンボルを削除すると、対応するフォルダー (つまり、B4E7044117F0469CB321E9FA9003E4CA5) も削除されることが予想されます。そうではないようです。

私の仮定は正しいですか?シンボル ストア構造を完全にクリーンアップする責任はありますか?