Как узнать, каким методом загрузилась моя система?

Как узнать, каким методом загрузилась моя система?

Есть ли способ определить, запустилась ли моя система вручную, нажав кнопку питания, или она запустилась из-за пакета Wake-On-LAN? Могу ли я где-то сохранить это значение и использовать его программно?

решение1

В Windows источник пробуждения регистрируется в системном журнале. Я не уверен, регистрирует ли он конкретно ваш WOL-пакет как источник, но вам придется попробовать это самостоятельно, поскольку существуют различные системы, поэтому описанный ниже методнетотказоустойчивость. (Надеюсь, все английские термины переведены правильно, так как я использую голландскую копию Windows. Поэтому, если вы не можете найти что-то, поищите что-нибудь отдаленно похожее! ;-))


Ручной, человеческий способ:

  1. НайдиСистемный журналоткрыв диалоговое окно запуска, нажав Win+ r. Entereventvwr.mscа затем бегите.
  2. Слева откройтеЖурналы Windowsа потомСистема.
  3. Щелкните правой кнопкой мышиСистемаи выберитеФильтровать текущий журнал...
  4. В появившемся диалоговом окне в разделеИсточники событий, выбиратьУстранение неполадок питанияи нажмитеХОРОШО.

Теперь он должен перечислить все записи журнала, связанные с питанием. Если вы нажмете на одну,Общийна вкладке также должен быть указанИсточник кильватерного следа.


Пример через PowerShell:

Системные журналы можно получить через PowerShell. Следующая команда PowerShell вернет последнюю запись журнала о питании, содержащую«Источник пробуждения». Адаптируйте его под свои нужды. (Регулярные выражения, вот это да!)

Get-EventLog "System" | Where-Object {$_.source -like "*Microsoft-Windows-Power-Troubleshooter*"} | select -first 1 | Format-List 

Связанный контент