A certain engineer "COMPLEX"

開発メモ その36 UWPAppはSystem.Diagnostics.Process.GetProcessesで列挙されるか?

Question


System.Diagnostics.Process.GetProcesses メソッドは、UWPアプリを列挙するのか?
というつまらない疑問。
ネット上見ても、出来る、出来ない、すら書いてない。
自明のことだから書いてないだけなの?

Answer


できる。

電卓を起動し、下記のプログラムを実行する。


using System;
using System.Linq;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
var ps = System.Diagnostics.Process.GetProcesses();
foreach (var p in ps.Where(process => process.ProcessName == "Calculator"))
{
try
{
Console.WriteLine("プロセス名: {0}", p.ProcessName);
Console.WriteLine("ID: {0}", p.Id);
Console.WriteLine("ファイル名: {0}", p.MainModule.FileName);
}
catch (Exception ex)
{
Console.WriteLine("エラー: {0}", ex.Message);
}

Console.WriteLine();
}
}
}
}

実行結果は、


プロセス名: Calculator
ID: 49308
ファイル名: C:\Program Files\WindowsApps\Microsoft.WindowsCalculator_10.1703.601.0_x64__8wekyb3d8bbwe\Calculator.exe

コメントを残す

メールアドレスが公開されることはありません。

%d人のブロガーが「いいね」をつけました。