windbgをもっと使用しようとしていますが、シンボルキャッシュで問題が発生し続けています。文字列の形式がどうあるべきかは私にはわかりません。
私にはいくつかの要件があります:
- Microsoftのサーバーを使用するhttp://msdl.microsoft.com/download/symbols
- \\ foo\Build1234にアーカイブされているソフトウェアのシンボルを使用する
- c:\ dev\symbolsでローカルキャッシュを使用します
\\ foo \ Build1234にある分散ビルドからのシンボルのアーカイブは、シンボルサーバーとして編成されていません。正しく理解できれば、cacheキーワードを使用する必要があります。
これらの要件を考えると、これは適切にフォーマットされたsrvpathのように見えますか?
cache*\\foo\Build1234;srv*c:\dev\symbols*http://msdl.microsoft.com/download/symbols
編集:
Advanced Windows Debuggingを読み始めたばかりで、cacheキーワードがどのように機能するかを誤解していました。これは、フォルダーが単なるファイルのフォルダーであり、シンボルサーバーではないことをデバッガーに伝える方法だと思いました。Michaelがコメントを残した後、私はそのセクションを読み直して、Michaelが説明したように実際に機能することを確認しました。
今、私はあなたが;を使うとき混乱しています。または*でパス/URLを区切ります。また、srv*プレフィックスが必要な場合。windbgのオンラインヘルプでは、次の例を示しています。
\\someshare\that\cachestar\ignores;srv*c:\mysymbols*http://msdl.microsoft.com/download/symbols;cache*c:\mysymbols;\\anothershare\that\gets\cached
\\ someshareのシンボルはキャッシュされず、Microsoftのシンボルはc:\ mysymbolsにキャッシュされ、c:\ mysymbolsは、cache*ディレクティブの右側にある他のパスのキャッシュとして使用されます。
srv *をときどき使用すると、混乱します。最初と最後のパスの前にsrv*が付いていない理由がわかりません。
編集2:
これはゆっくりと私には意味をなし始めています。srvディレクティブは、通常のシンボルディレクトリではなく、シンボルサーバーに使用されます。だから、私の最初の質問への答えはこれだと思います:
\\foo\Build1234;cache*c:\dev\symbols;srv*http://msdl.microsoft.com/download/symbols