Получение разного времени от службы Windows против создания того же в приложении Windows - PullRequest
0 голосов
/ 02 марта 2020

извините, если название немного сбивает с толку, но прочитайте меня.

Мне поручено создать Службу, которая регистрирует различное время и время простоя машины. После создания службы в приложении я решил передать в службу один и тот же код, и я получаю очень разные результаты (или число), вот пример:

Приложение: Время простоя: 00: 00: 06.2350000.

Сервис: Простой: 23082.00: 00: 00.

//Allows to get Idle Time
public static TimeSpan GetInputIdleTime()
{
 var plii = new NativeMethods.LastInputInfo();
 plii.cbSize = (UInt32)Marshal.SizeOf(plii);

 if (NativeMethods.GetLastInputInfo(ref plii))
 {
   return TimeSpan.FromMilliseconds(NativeMethods.GetTickCount() - plii.dwTime);
 }
 else
 {
   throw new Win32Exception(Marshal.GetLastWin32Error());
 }
}

//Allows to get last Input
public static DateTimeOffset GetLastInputTime()
{
  return DateTimeOffset.Now.Subtract(GetInputIdleTime());
}

Я действительно не понимаю, почему это дает разное время с использованием одного и того же кода, но я могу Гр asp проблема. Кто-нибудь может указать мне на что-то?

...