LenovoLegionToolkit

Форк
0
35 строк · 894.0 Байт
1
using System;
2
using System.Collections.Generic;
3
using System.Diagnostics;
4
using System.Linq;
5
using NvAPIWrapper.GPU;
6
using NvAPIWrapper.Native;
7

8
namespace LenovoLegionToolkit.Lib.Extensions;
9

10
public static class NVAPIExtensions
11
{
12
    private static readonly string[] Exclusions =
13
    {
14
        "dwm.exe",
15
        "explorer.exe",
16
    };
17

18
    public static List<Process> GetActiveProcesses(PhysicalGPU gpu)
19
    {
20
        var processes = new List<Process>();
21
        var apps = GPUApi.QueryActiveApps(gpu.Handle).Where(app => !Exclusions.Contains(app.ProcessName, StringComparer.InvariantCultureIgnoreCase));
22

23
        foreach (var app in apps)
24
        {
25
            try
26
            {
27
                var process = Process.GetProcessById(app.ProcessId);
28
                processes.Add(process);
29
            }
30
            catch (ArgumentException) { }
31
        }
32

33
        return processes;
34
    }
35
}
36

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.