【C#】実行ファイルのショートカットからコマンドライン引数を指定して実行する
こんばんは、mugihalです。
業務中にC#で設計していて感心したことがあったので覚え書きです。
常識かもしれない。
実行ファイルのショートカットからコマンドライン引数を指定して実行する方法
環境:Windows10 Home
開発環境:Visual Studio 2019
言語:C#
通常、コマンドライン引数を指定して実行する場合、以下の2択が代表的だと思います。
そのほかに、ショートカットから指定する方法があるらしい。
手順は以下の通り。
- ビルドして実行ファイル(.exe)を作成する。
- 実行ファイルのショートカットを作成する。
- ショートカットのプロパティ→リンク先の後ろに続けて引数を記述。
- ショートカットを実行。
ソースコード:Program.cs
static class Program { [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); } }
ソースコード:Form1.cs
public partial class Form1 : Form { public Form1() { InitializeComponent(); SetLabel(); // コマンドライン引数取得 string[] args = System.Environment.GetCommandLineArgs(); if (args.Length == 4) { // コントロールにセット SetText(args); } } public void SetLabel() { label1.Text = "引数1"; label2.Text = "引数2"; label3.Text = "引数3"; } public void SetText(string[] args) { textBox1.Text = args[1]; textBox2.Text = args[2]; textBox3.Text = args[3]; } }
結局、ほかの手法の方が楽じゃね?ってなりますがテストケースの一つとしてアリだと思いました。
C、C++でも同様に出来ると思います。
それでは。