|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - Как проверить что выполняется выключение компьютера а не перезагрузка ? |
|
|
Любой язык - Как проверить что выполняется выключение компьютера а не перезагрузка ?
|
Новый участник Сообщения: 10 |
Профиль | Отправить PM | Цитировать Редактор локальной групповой политики gpedit.msc
Конфигурация компьютера - Конфигурация Windows - Сценарии - Завершение работы Мне надо перед выключением компьютера выполнить скрипт, как в скрипте определить что комп выключается а не перегружается ? |
|
Отправлено: 13:21, 01-12-2011 |
Новый участник Сообщения: 10
|
Профиль | Отправить PM | Цитировать Как вариант Журнал событий "System-User32" Код события: 1074, Тип выключения: Выключение компьютера
Как в скрипте прочитать последнею запись из журнала и при сравнении Кода и Типа запустить скрипт ? |
Отправлено: 14:27, 01-12-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 1259
|
Профиль | Отправить PM | Цитировать wevtutil qe system /c:1 /rd:true /q:"*[System[EventID=1074]]"
|
Отправлено: 14:54, 01-12-2011 | #3 |
Новый участник Сообщения: 10
|
Профиль | Отправить PM | Цитировать Оно и на перезагрузку тоже работает, мне надо только на выключение.
Я сделал так: strComputer = "." Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colLoggedEvents = objWMIService.ExecQuery _ ("Select * from Win32_NTLogEvent Where Logfile = 'System' and SourceName='User32'" _ & "and (EventCode = '1074' or EventCode = '1076')") For Each objEvent in colLoggedEvents If InStr(objEvent.Message, "Тип выключения: Выключение питания") > 0 Then ' Тут формируется имя файла, я копипастить не стал NameFile = "Arc" Set WshShell = CreateObject("Wscript.Shell") WshShell.Run("c:\Progra~1\7-Zip\7z.exe a -mx7 -r0 -x!*.cdx D:\Archiv\DB_" & NameFile & ".7z d:\1C\DB", 1, True) End If Exit For Next Помогите избавиться от For, в запросе если делаю TOP 1 или Select 1, начинает ругаться на For, как сделать выборку из запроса на одну запись ? |
Отправлено: 07:44, 02-12-2011 | #4 |
Новый участник Сообщения: 42
|
Профиль | Отправить PM | Цитировать |
|
Отправлено: 08:23, 02-12-2011 | #5 |
Новый участник Сообщения: 10
|
Профиль | Отправить PM | Цитировать Цитата Loran_rus:
|
|
Отправлено: 08:34, 02-12-2011 | #6 |
Старожил Сообщения: 210
|
Профиль | Отправить PM | Цитировать |
Отправлено: 09:52, 02-12-2011 | #7 |
Новый участник Сообщения: 10
|
Профиль | Отправить PM | Цитировать |
Отправлено: 10:04, 02-12-2011 | #8 |
Старожил Сообщения: 210
|
Профиль | Отправить PM | Цитировать Цитата Реаниматор:
|
|
Отправлено: 11:00, 02-12-2011 | #9 |
Новый участник Сообщения: 10
|
Профиль | Отправить PM | Цитировать Цитата DmitriiV:
Вот 1с запрос, нужно тоже самое только в скрипте: Запрос = Новый Запрос ("ВЫБРАТЬ ПЕРВЫЕ 1 | Message |ИЗ | ЖурналСобытий |ГДЕ | Logfile = "System" | И SourceName = "User32" | И (EventCode = 1074 ИЛИ EventCode = 1076)"; Выборка = Запрос.Выполнить(); Если Выборка.Следующий() Тогда Если Найти(Выборка.Message, "Выключение компьютера") > 0 Тогда //Тут запускаю архивацию КонецЕсли; КонецЕсли; |
|
Отправлено: 11:10, 02-12-2011 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Выключение компьютера при потере коннекта КАК? | interminable | Хочу все знать | 11 | 25-07-2016 21:25 | |
Интерфейс - Удаленное выключение и перезагрузка компьютера. | poisonkit | Microsoft Windows 2000/XP | 10 | 03-02-2012 17:04 | |
Перезагрузка не выполняется. | Lifpa | Непонятные проблемы с Железом | 1 | 02-09-2011 11:08 | |
Разное - Как правильно проверить что с USB | Gik | Материнские платы и память | 12 | 18-03-2011 11:10 | |
несанкционированое выключение или перезагрузка пк произошла,как узнатьпричину? | sv962 | Microsoft Windows 2000/XP | 3 | 15-06-2006 11:39 |
|