|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Как вычислить параметр командной строки? |
|
VBS/WSH/JS - Как вычислить параметр командной строки?
|
Новый участник Сообщения: 5 |
Суть. Нужно сделать, чтобы скрипт определял запущены ли регламентные задания в 1с в отдельном процессе и если не запущен то предупреждал пользователя и высылал письмо на почту. Проблема в том, что у самой 1с и регламентного задания процессы одинаковые и нужно определить по параметры командной строки. Скрипт выводит содержимое CommandLine, там есть параметр DoscheduledJobs. Подскажите как написать условие проверки, если есть данный параметр DoscheduledJobs, то делаю то то, если нет то делаем то?
Скрипт на js. var PsWMI, PsProcesses1, PsProcess1, PsList1, Mess1; var vbCritical=16; //Создаем экземпляр объекта WshShell var WshShell = WScript.CreateObject("WScript.Shell"); //Включаем обработку исключительных ситуаций try { //Соединяемся с WMI PsWMI=GetObject("winMgmts:"); } //Начинаем обработку возможных ошибок catch (e) { if (e!=0) { Mess ="Ошибка\nКод ошибки: " + err.Number; WshShell.Popup(Mess,0,"Запущенные прoцеccы",vbCritical); WScript.Quit(); } } //Создаем кoллeкцию всех работающих процеccoв PsProcesses1=new Enumerator(PsWMI.ExecQuery("SELECT * FROM Win32_Process where name='1cv8c.exe'")); PsList1="Зaпущенныe прoцеccы\n\n"; //Цикл для перебора коллекции while (!PsProcesses1.atEnd()) { PsProcess1=PsProcesses1.item (); PsList1+=PsProcess1.Name + " " + PsProcess1.ProcessID + "\n"+PsProcess1.CommandLine ; PsProcesses1.moveNext(); } //Выводим кoллeкцию процеccов и их идентификаторов WScript.Echo(PsList1); Либо может кто подскажет как в vbs это можно было бы реализовать было бы лучше. Уже есть рабочий скрипт, но я тут только проверку процесса могу сделать, но это не подходит в данном случае. А как с параметром командной строки поступить даже не знаю((( set service = GetObject ("winmgmts:") for each Process in Service.InstancesOf ("Win32_Process") If Process.Name = "1cv8.exe" then wscript.quit End If next Dim o_Mess, v_Conf v_Conf = "http://schemas.microsoft.com/cdo/configuration/" Set o_Mess = CreateObject("CDO.Message") With o_Mess .To = "почта" 'куда отправляем .From = "имя <почта>" 'имя отправителя + Email .Subject = "Остановлено обновление 1С" 'Тема письма .TextBody = "Необходимо уведомить администратора салона" 'Сообщение ' .AddAttachment "C:\data.log" 'Прикрепить файл .TextBodyPart.Charset = "windows-1251" 'русская кодировка With .Configuration.Fields .Item(v_Conf & "sendusing") = 2 'без использования каталога Server Exchange .Item(v_Conf & "smtpserver") = "smtp.yandex.ru" 'Адрес SMTP-сервера .Item(v_Conf & "smtpauthenticate") = 1 'Тип авторизации .Item(v_Conf & "sendusername") = "почта" 'здесь имя пользователя без @ .Item(v_Conf & "sendpassword") = "" 'пароль .Item(v_Conf & "smtpserverport") = 465 'порт (альтернативный - 465) .Item(v_Conf & "smtpusessl") = True 'использовать ли шифрованое подключение SSL .Item(v_Conf & "smtpconnectiontimeout") = 60 'Время до завершения повторных попыток подключения .Update End With .send End With Set o_Mess = Nothing MsgBox "НЕ ЗАПУЩЕН ОБМЕН 1С, СРОЧНО ЗАПУСТИТЬ!!!", 0, "ВНИМАНИЕ!" |
|
Отправлено: 12:08, 07-04-2015 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата SharkX58:
|
|
Отправлено: 15:57, 07-04-2015 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Вот.
|
Отправлено: 06:27, 08-04-2015 | #3 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Доступ - [решено] Запуск командной строки от имени Администратора из командной строки | emcee | Microsoft Windows 8 и 8.1 | 12 | 06-05-2023 07:36 | |
CMD/BAT - запуск командной строки от имени администратора из командной строки | jah | Скриптовые языки администрирования Windows | 18 | 19-09-2015 08:59 | |
CMD/BAT - как перевести на язык командной строки | rocet | Скриптовые языки администрирования Windows | 0 | 04-02-2014 12:39 | |
2010 - [решено] недопустимый аргумент командной строки. проверьте используемый параметр | Ripping Corpse | Microsoft Office (Word, Excel, Outlook и т.д.) | 4 | 21-05-2013 16:09 | |
Разное - [решено] как установить принтер с командной строки? | pva | Microsoft Windows 2000/XP | 1 | 15-02-2010 14:05 |
|