dotPeek 2018.2ヘルプ

シンボルサーバーとしてのdotPeekの使用

dotPeekはシンボルサーバーとして機能することができます。つまり、コンパイルされたアセンブリをデバッグするために必要な情報をデバッガに提供できます。

従来のシンボルサーバとは対照的に、例えば、Microsoft Symbol Server(英語)、dotPeekはシンボルファイルを格納せず、要求されたアセンブリのPDBとソースファイルを生成し、それらをデバッガに返します。

dotPeek Symbol Serverの実行

dotPeekシンボルサーバを開始/停止するには

  • ツールバーのシンボルサーバの起動/停止 ThemedIcon ServerStart Screen Gray をクリックします。
  • メインメニューのツール | シンボルサーバの起動/停止を選択します。

dotPeekシンボルサーバの最初の起動時に、シンボルファイルを生成するアセンブリを選択するように求められます。設定オプションについては、dotPeekシンボルサーバの設定を参照してください。

dotPeekシンボルサーバーが起動すると、対応するアイコンがステータスバーに表示されます: その上にマウスポインタを置くと、そのアドレスと現在の設定を確認できます:

dotPeek symbol server icon in the status bar

dotPeekシンボルサーバを使用するには、デバッガ設定でそのアドレスを指定します。Microsoft Visual Studioでは、構成は次のとおりです。

dotPeek Symbol Serverを使用するためにVisual Studioを設定するには

  1. Visual Studioメニューで、ツール | オプション | デバッグ | シンボルを選択します。
  2. 新しい場所を追加をクリックし、次のアドレスを指定します: http://localhost:33417/。(ポート番号は、dotPeekオプションのシンボルサーバページで設定できます。
    Debugging symbols options in Visual Studio
  3. Visual Studioのオプションで、デバッグ | 一般ページに移動し、マイコードだけを有効にするチェックボックスをオフにします。

dotPeekシンボルサーバの設定

dotPeekシンボルサーバを使用すると、シンボルファイルを生成する正確なアセンブリを選択できます。正しい構成では、望ましくないシステムアセンブリや興味のないアセンブリへのステップアップを防ぐことができます。

dotPeekシンボルサーバを設定するには

  1. dotPeekのメインメニューでツール | オプションを選択します。
  2. シンボルサーバページを開きます。
  3. Using the radio buttons, choose one of the options under the シンボルファイル(.pdb)を生成する . The meanings of the first four options are obvious. The last one allows for the most flexibility — after selecting this option, you can select only those assemblies which you need for debugging, and open them in the Assembly Explorer.
  4. 必要に応じて、dotPeekシンボルサーバに使用されるポート番号を変更することができます。
  5. OKをクリックします。

考えられる問題と解決策

dotPeekシンボルサーバで問題が発生した場合は、まずプロジェクト/ PDB生成ステータスウィンドウ(dotPeekのメニューでWindows | プロジェクト/ PDB生成ログ)を開きます。ここでは、PDBを生成するコマンドとプロジェクトを生成するコマンドの結果と同様に、すべてのシンボルサーバーのタスクを見ることができます。デバッガによってdotPeekシンボルサーバからPDBが要求されたものの、生成されなかったPDBがある場合、このウィンドウにエラーメッセージとともに対応するエントリが表示されます。

  • Most often, problems occur when the target assembly is not found. To fix that, you can open the assembly in the Assembly Explorer. If you don't know the location of the assembly, you can learn it when Visual Studio is in the debug mode — open the モジュール window ( デバッグ | Windows | モジュール ) and check the パス column.
  • 64ビット版のWindowsでdotPeekを実行している場合は、64ビットバージョンのdotPeekを実行していることを確認します(インストールディレクトリ %localappdata%JetBrains\Installations\dotPeek[N]に2つの実行可能ファイル dotPeek32.exedotPeek64.exe があります)。

要求されたアセンブリがプロジェクト/ PDB生成ステータスウィンドウに表示されない場合は、デバッガが対応するシンボルファイルをすでに検出し、dotPeekから要求していないことを意味します。シンボルファイルが正しければソースコードが利用可能で、すべて正常です。アセンブリはdotPeekなしでデバッグできます。そうでない場合は、次を試してください:

  • 問題のあるPDBファイルを削除または名前を変更します。Visual Studioがデバッグモードになっているときに、各アセンブリに対して実際のPDBファイルの場所(存在する場合)を見つけることができます。モジュールウィンドウ(デバッグ | Windows | モジュール)を開き、シンボルファイル列を確認します。
  • PDBファイルが別のシンボルサーバーから受信された場合は、このサーバーを無効にするか、シンボルサーバーのリスト(Visual Studioのオプションのデバッグ | シンボル | シンボルファイルの場所)でdotPeekシンボルサーバーを移動します。

コンパイルされたアセンブリのデバッグに関するもう1つの問題は、最適化されたアセンブリです。最適化されたアセンブリの場合、一部のデバッガ関数は使用できません。シンボルファイルが正しい場合でも、ローカル変数の値は表示されません。Visual Studioがデバッグモードのときにアセンブリが最適化されているかどうかを確認できます。モジュールウィンドウ(デバッグ | Windows | モジュール)を開き、最適化された列を確認します。

最終更新日: 2018年9月4日

関連事項