Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Разное - [решено] Событие и код перехода на питание от батареи

Ответить
Настройки темы
Разное - [решено] Событие и код перехода на питание от батареи

Пользователь


Сообщения: 114
Благодарности: 5

Профиль | Отправить PM | Цитировать


Здравствуйте! Есть одна задумка. Хочу создать определённые задания в планировщике задач, которые бы запускались при переходе на питание от батареи. Не могу определить тригер для этого. То есть запуск задачи при событии, а вот журнал, источник и код события не могу найти. Бродил на TechNet, но ничего подходящего не смог найти. Может быть есть какой-то альтернативный вариант, то есть запуск задания по какому-то другому условию, которое в свою очередь всегда выполняется системой при переходе на питание от батареи?

Отправлено: 08:57, 21-06-2015

 


Administrator


Сообщения: 25151
Благодарности: 3803

Профиль | Сайт | Отправить PM | Цитировать


Цитата n_i_x:
как разделить сообщение с одинаковыми кодами, но разными событиями »
Зачем? Сделайте разные коды (та часть, которую вы приводили выше):
Код: Выделить весь код
If ($batt.BatteryStatus -ne $prevBatteryStatus) {
		if ($prevBatteryStatus -like '2') {
			$EventID = 10
			$EventMsg = "Switched to Battery Power! $($Message.ChargeRemMsg), Minutes: $($Message.RemTimeMsg)"
		} else {
			$EventID = 11
			$EventMsg = "Switched back to AC Power! $($Message.ChargeRemMsg), Minutes: $($Message.RemTimeMsg)"
		}
		Write-EventLog -LogName BatteryMonitor -Source BattMon -EventID $EventID -Message $EventMsg -EntryType Warning -ComputerName $env:computername -ErrorAction:SilentlyContinue

-------
FAQ по Windows 10 .::. Настройка Центра обновления в Windows 10 .::. Чистая установка Windows 10 – пошаговая инструкция

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:25, 21-06-2015 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.



Administrator


Сообщения: 25151
Благодарности: 3803

Профиль | Сайт | Отправить PM | Цитировать


Вложения
Тип файла: zip batterylog_0.zip
(692 байт, 92 просмотров)
Тип файла: zip batterylog_1.zip
(627 байт, 82 просмотров)

А в принципе, по первоначальной постановке вопроса я понял, что вам вам не нужно ежесекундный отчет в консоли, запись в журнал событий о запуске скрипта, о низком заряде батареи и т.д. Вам ведь нужно только, чтобы в журнал записывалось событие при отключении от сети и переход на питание от батареи? Если так, то скрипт можно существенно сократить - batterylog_0.zip
А если целью был просто запуск приложения при переходе на питание от батареи, то берите batterylog_1.zip и поправьте в нем путь к запуску программы в строке 12. Если программу нужно запускать с параметрами, то параметры указывайте за кавычками. Вместо C:\Program Files\ можете использовать переменную $env:ProgramFiles
Скрипт спокойно запускается из планировщика и при соответствующей настройке задачи не показывает свое окно.

-------
FAQ по Windows 10 .::. Настройка Центра обновления в Windows 10 .::. Чистая установка Windows 10 – пошаговая инструкция

Это сообщение посчитали полезным следующие участники:

Отправлено: 18:26, 21-06-2015 | #12


Пользователь


Сообщения: 114
Благодарности: 5

Профиль | Отправить PM | Цитировать


Блин! Огромное человеческое спасибо!!!!!

Изначально у меня была задумка, что бы при переходе на питание от батареи, автоматически менялась тема оформления с заставки на чёрный фон, закрытие определённых приложений и тому подобное, а при переходе на питание от электросети возвращалось всё обратно. Всё подготовил для этого, но вот с событиями батареи запнулся)

Отправлено: 18:41, 21-06-2015 | #13



Administrator


Сообщения: 25151
Благодарности: 3803

Профиль | Сайт | Отправить PM | Цитировать


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

Примерно так (требуется проверка, спешил, мог напортачить):
Код: Выделить весь код
$checkInterval = 1
$prevBatteryStatus = 2
$prevLogTime = 0

do {
    $batt = Get-WmiObject -Class Win32_Battery

If ($batt.BatteryStatus -ne $prevBatteryStatus) {
		if ($prevBatteryStatus -like '2') {
			& "<путь к батнику, который меняет настройки при работе от батареи>"
		} else {

			& "<путь к батнику, который меняет настройки при работе от сети>"
		}

	}
	$prevBatteryStatus = $batt.BatteryStatus
	
	$currLogTime = New-TimeSpan "01 January 1970 00:00:00" $(Get-Date)
	$diff = $currLogTime.TotalSeconds - $prevLogTime.TotalSeconds

    Sleep $checkInterval
}
while (1)

-------
FAQ по Windows 10 .::. Настройка Центра обновления в Windows 10 .::. Чистая установка Windows 10 – пошаговая инструкция

Это сообщение посчитали полезным следующие участники:

Отправлено: 20:24, 21-06-2015 | #14


Новый участник


Сообщения: 4
Благодарности: 0

Профиль | Отправить PM | Цитировать


Здравствуйте. Последний скрипт хорош, и мне подходит для одной из задач. Но я так понял, что он не просто проверяет состояние питания, а сравнивает его с предыдущим, работая циклически? А для второй моей задачи нужно просто единоразово запустить подобный скрипт, чтобы он, в свою очередь, выполнил действия в зависимости от типа питания (как и в предыдущем примере) и завершился. Как его отредактировать для этих целей?

Отправлено: 12:40, 05-12-2015 | #15



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Разное - [решено] Событие и код перехода на питание от батареи

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Напряжение на контактах, идущих от батареи buzanovn Ноутбуки 10 26-06-2018 13:09
Падает яркость на ноутбуке при работе от батареи Leeaka0ne Хочу все знать 5 12-01-2015 06:15
2008 R2 - [решено] Может кому поможет. Встретил проблему Решил Код события 47 Событие WHEA-logger bad-us Windows Server 2008/2008 R2 5 21-10-2014 12:05
Ноут включается только от батареи, от сети без батареи не хочет stranges Непонятные проблемы с Железом 5 06-09-2011 13:37
Событие 1030 от USERENV flower Microsoft Windows NT/2000/2003 7 09-12-2009 14:01




 
Переход