1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

LinuxとVsCodeでC# GUIアプリをデバッグする

Last updated at Posted at 2022-12-12

VsCodeでGtkアプリ C#をデバッグするまで

前回の続き

必要なもの

マイクロソフト公式のC#拡張機能 

デバッグ機能が利用できるようになります。

.NET Coreのための軽量な開発ツール。
シンタックスハイライト、インテリセンス、定義へ移動、すべての参照の検索など、優れたC#編集サポート。
.NET Core (CoreCLR)のデバッグをサポート。注:Monoデバッグはサポートされていません。デスクトップCLRのデバッグは限定的なサポートとなります。
Windows、macOS、Linuxのproject.jsonとcsprojのプロジェクトをサポートします。

launch.json

「実行とデバッグ」で生成できます。
.NET Core Launch (console)を選択します。

programのところをC#アプリまでのフルパスに書き換えます。

launch.json
{ 
    "version": "0.2.0",
    "configurations": [
        {
            "name": ".NET Core Launch (console)",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            "program": "dllファイルまでのパスを記入する",
            "args": [],
            "cwd": "${workspaceFolder}",
            "stopAtEntry": false,
            "console": "internalConsole"
        }  
    ]
}

ビルドしたアプリ

事前にプロジェクトをビルドしアプリを生成しておきます。

フルパスをlaunch.jsonのprogramのところに書きます。

proxy環境が必要な場合

proxyが必要な環境で利用する時、VsCodeのnugetのバグでうまくビルドが動作しないことがあります。proxy設定はしているがnugetがうまく通らない場合はターミナル側でビルドやrestoreするとよいです。その後VSCodeで作業します

追記

パスを2行足すだけでアプリを毎回手動でビルドしなくても、自動でビルドした後にデバッグできるようになる

launch.json
"program": "dllファイルまでのパスを記入",
"args": ["--project","プロジェクトファイルまでのパス"],

dllファイルまでのパスを記入。環境変数を確認 直接書いたほうが良い
argsに引数に--projetとprojectファイルまでのパスを2行足すだけでデバッグできることがわかりました。

launch.json

{ 
    "version": "0.2.0",
    "configurations": [
        {
            "name": ".NET Core Launch (console)",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            "program": "dllファイルまでのパスを記入する",
            "args": ["--project","プロジェクトファイルまでのパス"],
            "cwd": "${workspaceFolder}",
            "stopAtEntry": false,
            "console": "internalConsole"
        }  
    ]
}

流れ

Gtkプロジェクトを作成

フォルダを作成します。VSCodeからフォルダを開きます。
Screenshot from 2022-12-12 21-01-57.png

拡張機能「vscode-solution-explorer」でソリューションを作成します。
Screenshot from 2022-12-12 21-02-08.png

拡張機能「vscode-solution-explorer」でGTKアプリプロジェクトを生成します。
Screenshot from 2022-12-12 21-06-48.png

launch.jsonを作成

「実行とデバッグ」「launch.jsonファイルを作成する」を押します。デバッカーの選択は「.net6 and .net core」を選びます。
Screenshot from 2022-12-12 21-03-02.png

launch.jsonの構成の追加は「.NET Core Launch (console)」を選択します。
Screenshot from 2022-12-12 21-06-25.png

launch.jsonの「program」にC#アプリのパスを記入します。
Screenshot from 2022-12-12 21-07-31.png

デバッグ

launch.jsonを作成すると「実行とデバッグ」からGTKアプリがデバッグできるようになります。
Screenshot from 2022-12-12 21-09-00.png

ブレイクポイントで停止できます。
Screenshot from 2022-12-12 21-10-39.png

その2へ続く

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?