通常、SymProxy は、取得したファイルを、インターネット インフォメーション サービス (IIS) 内で関連付けられている Web サイトの仮想ルートとして指定されたディレクトリにキャッシュします。 その後、IIS はクライアント デバッガーでファイルを使用できるようにします。 デバッガーは HTTP から直接ファイルを開くことができないため、シンボル パスで指定されたローカル キャッシュにファイルをコピーします。
srv*c:\localcache*https://server/symbols
この例では、クライアント デバッガーによってファイルが c:\localcache にコピーされます。 このような状況では、ファイルは 2 回コピーされます。SymProxy によって Web サイトの仮想ルートに 1 回、デバッガーによってローカル キャッシュにもう一度コピーされます。
2 回目のコピー操作を回避し、処理を高速化することができます。 これを行うには、まず、Web サイトの仮想ルートを、デバッガーからアクセスできる UNC パスとして共有する必要があります。 たとえば、このパスの名前は \\server\symbols です。 その後、MIME の種類の IIS 構成を削除する必要があります。
MIME の種類の IIS 構成を削除するには
管理ツールから、インターネット インフォメーション サービス (IIS) マネージャーを開きます。
[Web サイト] を展開します。
[既定の Web サイト] を右クリックします。
Symbols 仮想ディレクトリを右クリックし、[プロパティ] を選択します。
[ HTTP ヘッダー ] タブをクリックします。
[ MIME の種類] をクリックします 。
[ 登録済み MIME の種類] というラベルの付いたリスト ボックスですべての種類を選択します。
[ 削除 ] をクリックします。
[MIME の種類] ダイアログを終了するには、[OK] をクリックします。
シンボルのプロパティを終了するには、[OK] をクリックします。
これにより、IIS は、Web サイト上のすべてのトランザクションについて、デバッグ クライアントに 見つからないファイル を返します。 ただし、SymProxy によって仮想ルートにファイルが設定されるのを防ぐことはありません。
MIME の種類の IIS 構成を削除した後、コマンドを使用して、まず HTTP ストアとストアの仮想ルートにマップされる共有でシンボルを検索するようにデバッガー クライアントを構成します。
srv**https://server/symbols;srv*\\server\symbols
前の例では、シンボル パス (srv**https://server/symbols) の最初の要素は、HTTP ストアからファイルを取得し、ローカル キャッシュとして既定のシンボル ストアにコピーすることを示しています。 HTTP ストアからファイルが受信されることがないため、指定されたキャッシュは重要ではありません。 このエラーが発生した後、ストアの仮想ルートの実際の場所 (srv*\\server\symbols) からファイルを取得しようとします。 この試行は、ファイルが前のパス処理の副作用としてその場所にコピーされるため、成功します。