「ライブラリの基礎 - C Sharp DLL」の版間の差分

📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

 
168行目: 168行目:


== デバッグ方法 ==
== デバッグ方法 ==
C# DLLのデバッグ方法を、以下に記載する。<br>
C#ライブラリのデバッグ方法を、以下に記載する。<br>
<br>
<br>
# [ソリューションエクスプローラ]において、C# DLLプロジェクトを右クリックして[プロパティ]を選択する。
* Rider
# [C# デバッグ プロパティ]画面が開くので、画面上部にある[構成]プルダウンから[デバッグ]を選択する。
*: 外部コードのデバッグは初期状態で有効化されている。<br>もし、デバッガにライブラリコードを無視させる場合は、以下に示す手順に従う。
# 画面左にある[デバッグ]を選択する。
*# 外部コードのデバッグを無効にするには、[ファイル]メニューバー - [設定] - 設定画面の左ペインにある[ビルド、実行、デプロイ] - [デバッガー]を選択する。
# 画面右にある[開始動作]で次の手順を行う。
*# 設定画面の右ペインにある[外部ソースのデバッグを可能にする]チェックボックスのチェックを外す。
#* .NET Framework DLLの場合、[外部プログラムを起動する]を選択して、呼び出し元の実行ファイルのフルパスを入力する。
*#: <br>
#* .NET Framework DLLでASP.NETの場合、[ブラウザーを開始時に使用するURL]を選択して、ローカルのASP.NETアプリのURLを入力する。
*: ただし、このオプションを無効にしても、外部コードに移動してブレークポイントのみを設定することはできる。
#* .NET Core DLLの場合、[デバッグプロパティ]ページが異なる。<br>[起動]プルダウンから[実行可能ファイル]を選択して、[実行可能ファイル]項目に、呼び出し元の実行ファイルのフルパスを入力する。
*: しかし、外部コードのブレークポイントはデバッガによって無視されて、外部コードに入ることはできなくなる。
# コマンドライン引数が必要な場合、[コマンドライン引数]項目または[アプリケーション引数]項目に、必要なコマンドライン引数を入力する。
*: <br>
# [ファイル] - [選択した項目を保存]ボタンを押下して、変更を保存する。(または、[Ctrl] + [S]キーを押下する)
* Visual Studio
*# [ソリューションエクスプローラー]において、C#ライブラリプロジェクトを右クリックして[プロパティ]を選択する。
*# [C# デバッグ プロパティ]画面が開くので、画面上部にある[構成]プルダウンから[デバッグ]を選択する。
*# 画面左にある[デバッグ]を選択する。
*# 画面右にある[開始動作]で次の手順を行う。
*#* .NET Frameworkの場合、[外部プログラムを起動する]を選択して、呼び出し元の実行ファイルのフルパスを入力する。
*#* .NET FrameworkでASP.NETの場合、[ブラウザーを開始時に使用するURL]を選択して、ローカルのASP.NETアプリのURLを入力する。
*#* .NET / .NET Coreの場合、[デバッグプロパティ]ページが異なる。<br>[起動]プルダウンから[実行可能ファイル]を選択して、[実行可能ファイル]項目に、呼び出し元の実行ファイルのフルパスを入力する。
*#: <br>
*# コマンドライン引数が必要な場合、[コマンドライン引数]項目または[アプリケーション引数]項目に、必要なコマンドライン引数を入力する。
*# [ファイル] - [選択した項目を保存]ボタンを押下して、変更を保存する。(または、[Ctrl] + [S]キーを押下する)
<br>
<br>
C# DLLプロジェクトを右クリックして、[スタートアッププロジェクトに設定]を選択して、デバッグを開始する。<br>
C#ライブラリプロジェクトを右クリックして、[スタートアッププロジェクトに設定]を選択して、デバッグを開始する。<br>
デバッグでブレークポイントがヒットしない場合、自身のDLL出力(初期設定では、<project>\Debugディレクトリ)が、<br>
デバッグでブレークポイントがヒットしない場合、自身のDLL出力(初期設定では、<project>\Debugディレクトリ)が、<br>
呼び出し元の実行ファイルで呼び出されている場所であることを確認する。<br>
呼び出し元の実行ファイルで呼び出されている場所であることを確認する。<br>