C# WQLeventQuery, чтобы найти процесс с определенным заголовком главного окна ⇐ C#

Место общения программистов C#
Anonymous
C# WQLeventQuery, чтобы найти процесс с определенным заголовком главного окна

Сообщение Anonymous »

Есть ли быстрый способ прослушать процесс, который имеет определенное название главного окна? Прямо сейчас я нахожу все процессы с одним и тем же именем, а затем переключал их, чтобы найти заголовок окна. Это кажется громоздким. Я не опытен с C#, мне просто нужен быстрый наконечник. < /P>
public ManagementEventWatcher startWatcher = new ManagementEventWatcher(
new WqlEventQuery("SELECT * FROM Win32_ProcessStartTrace WHERE ProcessName='steamwebhelper.exe'"));

startWatcher.EventArrived += (s, e) =>
{
Process[] steamwebhelperInstances = Process.GetProcessesByName("steamwebhelper");

foreach (Process process in steamwebhelperInstances)
{
Console.WriteLine(process.MainWindowTitle);

if (process.MainWindowTitle == "Steam Big Picture Mode")
{
Console.WriteLine("Steam Big Picture Mode started!");

if (audioDeviceList.InvokeRequired)
{
audioDeviceList.Invoke((MethodInvoker)delegate
{
if (audioDeviceList.SelectedItem is CoreAudioDevice selectedDevice)
{
prevDevice = controller.DefaultPlaybackDevice;
selectedDevice.SetAsDefault();
}
});
}

}
}
};


Подробнее здесь: https://stackoverflow.com/questions/796 ... ndow-title

Вернуться в «C#»