Window10標準のcsc.exeとテキストエディタを使ってC#を学習しています。
テキストエディタはVisual Studio Code(以下VSCode)を使っているのですが、VSCodeでC#をデバッグ出来るらしいのです。
色々調べて試してみましたが、Window10標準のcsc.exe(MSBuild?)が生成するデバッグファイルが対応していないためVSCodeでデバッグが出来ないようです。
.NET SDKかVisual Studio 2019のcsc.exeであればデバッグすることが出来るようなので試してみます。
.NET SDKのインストール
実行環境に合わせたインストーラーをダウンロードしインストール。
私はバージョン5.01のx64インストーラー版でインストールしました。
Visual Studio Codeのインストール
インストーラーのオプションでコンテキストメニュー関連をチェック
日本語化
「Ctrl+Shift+P(Command Palette)」→「Configure Display Language」→「Install Additional Laugage」言語を選択
C#拡張機能のインストール
拡張機能(Ctrl+Shift+X)→C#
dotnet.exeでconsoleプロジェクトを作成
powershellで実行
PS>dotnet new console -Name <プロジェクト名>
PS>cd <プロジェクト名>
PS>code .
VSCodeでconsoleプロジェクトをデバッグ
VSCodeでプロジェクトを開きしばらくするとC#拡張から追加しますかと問い合わせがありますので、Yesをクリック。
一時停止したい行の先頭をクリックすると赤い〇が付く
F5でデバッグ実行
赤い〇の部分で一時停止する。
続行したい場合はF5を押す。
dotnet.exeでwinformsプロジェクトを作成
powershellで実行
PS>dotnet new winforms -Name <プロジェクト名>
PS>cd <プロジェクト名>
PS>code .
VSCodeでwinformsプロジェクトをデバッグ
なぜか、dllのパスが存在しないと叱られるのでlanch.jsonを修正
.vscode/lanch.json
の
"program": "${workspaceFolder}/bin/Debug/net5.0/WinformsProject.dll",
を
"program": "${workspaceFolder}/bin/Debug/net5.0-windows/WinformsProject.dll",
へ書き換える。
操作はconsoleプロジェクトと同じ
dotnetでプロジェクトにパッケージを追加
先ほどのconsoleプロジェクトにOpenCVSharpのパッケージを追加してみます。
PS>dotnet add <プロジェクト名> package OpenCvSharp3-AnyCPU
PS>cd <プロジェクト名>
PS>code .
きちんと追加されたか簡単なサンプルプログラムを実行してみる。
Program.csを以下のコードに書き換える。
using System;
using OpenCvSharp;
using OpenCvSharp.Extensions;
namespace ConsoleProject
{
class Program
{
static void Main(string[] args)
{
using (var mat = new Mat(@"H:\csharp\dotnet5\ConsoleProject\logo.png"))
{
Cv2.ImShow("sample", mat);
Cv2.WaitKey(0);
};
}
}
}
リリースでビルド
dotnet build --configuration Release
最新の.NET SDKを導入してみて
インストール不要でプログラミングを始められる、お手軽さはなくなりますが、デバッグが使える点は非常に素晴らしいです。
またNugetで公開されているパッケージの導入もすごく簡単なので、Window10標準のcsc.exeに戻れそうにないです。
.NET SDKをインストールすればdotnet.exeを使うことができますが、どうせインストールするのであればリソースの作成や管理を考えるとVisual Studio 2019のインストールするのがよさそうです。
.NET SDK6.0のインストール
気が付いたらVisual Studio Codeでデバッグが出来なくなっていました。
色々試したところ.NET SDKを6.0にバージョンアップしたところデバッグが出来るようになりました。
コメント
[…] Visual Studio Code で C# のデバッグをしたい | 迷惑堂本舗 […]
[…] Visual Studio Code で C# のデバッグをしたい | 迷惑堂本舗 […]