2012-05-10 3 views
2

これは、「この作業を行うにはどうすればよいのですか」よりも「なぜこのように機能するのですか」という質問です。WCFリモートデバッグ用のシンボルの位置

私はリモートでデバッグしているWCF Webサービスを持っています。 VS 2010リモートデバッガがインストールされ、Windowsサービスとして実行されているステージングサーバーに展開されます。権限は正しいですが、問題なくプロセスにアタッチできます。私が遭遇した問題は、一貫してロードするシンボルを得ることができなかったことです。

私はWCFサービスをC:\ Webs \ MyServiceに展開しており、C:\ Webs \ MyService \ binにはさまざまなDLLがあります。これは、独自のアプリケーションプールを持つ別のサイトとして設定されています。私が見つけたのは、binフォルダーに必要な.pdbファイルがあっても、ローカルマシンからw3wp.exeプロセスにアタッチしても、Visual Studioはシンボルをロードしませんでした。 IISが起動してワーカープロセスが生成されたとき、サービスDLLが一時的なASP.NETファイルディレクトリの下にC:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASPのようなものにコピーされます。 .NETファイル\ルート\ 19f82539 \ e55fff8f \アセンブリ\ dl3 \ 2926a261 \ f625d158_f62ecd01。私は手動でこのフォルダに.pdbファイルをコピーすると、シンボルがロードされ、デバッグを実行できることがわかりました。

なぜこのように動作するのでしょうか、シンボルファイルをこの別のディレクトリに手動でコピーする必要がないのでしょうか。悪いのは、変更と再デプロイが必要な場合、ワーカープロセスはそれらを認識できないことです。 IISを再起動しなければならなかったため、別の一時ディレクトリが作成され、.pdbを再度コピーする必要がありました。

答えて

2

私はウェブアプリケーションで同様の問題があります。明らかにマイクロソフトはこれを認識しています:http://go4answers.webhost4life.com/Example/remote-debugging-symbols-not-loaded-207525.aspx

うまくいけば、彼らはすぐに修正をリリースします。

BrianRの関連する質問Why are no Symbols loaded when remote debugging?には、デバッグファイルを含むフォルダを作成し、リモートサーバー上で環境変数_NT_SYMBOL_PATHを指すように提案する提案もあります。

+0

ヒントをありがとう、私はこれが失われた原因だと思った。 –

+0

あなたは大歓迎です! – Teorist

関連する問題