Uzyskaj zużycie baterii według procesu

Mam kod (w c #) dla całego zarządzanego procesu w moim komputerze.

używamLicznik wydajności klasa dla znalezienia wszystkich wartości powiązanych w jednym określonym procesie.

Dla próbki ten kod odzyskał czas procesora na firefox:

PerformanceCounter processorTime = new PerformanceCounter("Process", "% Processor Time", "firefox");

double processTime = 0;

while(true){
    processTime = processorTime.NextValue();
}

Wiem też, jak odzyskać procent mojej baterii:

PowerStatus power = SystemInformation.PowerStatus;
float secondsRemaining = power.BatteryLifePercent;
if (secondsRemaining >= 0)
{
    kpiBattery.batteryLevel = (secondsRemaining * 100).ToString();
}

Chcę uzyskać baterię użytkową PROCESEM, a nie globalnie.

W przypadku próbki, podczas procesu „firefox” używa się, kto używał wielu baterii?

WIEM, że chcę uzyskać poziom naładowania baterii, gdy proces został rozpoczęty i kiedy proces został zabity, i zrobić różnicę, ale NIE jest to rzeczywiste użycie baterii, ponieważ proces między czasem rozpoczęcia i zakończenia może być wykonywany przez wiele innych procesów. zużywa również baterię.

Jeśli masz jakiś pomysł lub znasz rozwiązanie, jestem bardzo zainteresowany.

Dzięki.

questionAnswers(1)

yourAnswerToTheQuestion