C# WinUI 3アプリを作っていく途中で、調べたことを忘録的に投稿します。今回はWinUI3プロジェクトでコマンドライン引数を取得する処理です。
GetCommandLineArgsが使える
いろいろアセンブリが使えない[WinUI3]プロジェクトですが、System.Environment アセンブリは使えます。
Windows.Formsアプリと同様にGetCommandLineArgsを利用してコマンドライン引数を取得できました。
if(Environment.GetCommandLineArgs().Length > 1)
{
foreach (var arg in Environment.GetCommandLineArgs())
{
}
}
デバッグ時はプロファイルで引数を指定
Visual Studioでデバッグする際は[プロジェクト|プロパティ]メニューで表示される[プロジェクトのプロパティ]画面で行います。
1. [デバッグ|全般|デバック起動プロファイル UIを開く]をクリックします。
2. [プロファイルの起動]画面の[コマンド ライン引数]に引数を入力します。
アプリをデバッグ実行すると、System.Environment.GetCommandLineArgsに指定したコマンドライン引数が受け渡されて起動します。
WinUI3は日々更新されていくので、Microsoft.WindowsAppSDK(Ver. 1.2.221109.1)を利用した場合の動作です。
まとめ
今回は短い記事ですが、WinUI 3 プロジェクトで、コマンドライン引数を取得する処理について書きました。
使えないアセンブリが多いWinUI3ですが、System.Emvironmentアセンブリは利用できました。Windows.Formアプリ同様に、GetCommandLineArgsでコマンドライン引数を取得できました。
C#のWinUI 3アプリで、コマンドライン引数の処理がしたい人の参考になれば幸いです。
スポンサーリンク
最後までご覧いただき、ありがとうございます。