![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Нужно ли завершать скрипт |
|
VBS/WSH/JS - Нужно ли завершать скрипт
|
Старожил Сообщения: 390 |
У меня в планировщике win2008R2 по многу раз выполняется vbs-скрипт, начинающийся с нижеприведенных строк и кончающийся только закрытием лог-файла.
Dim WshShell Dim fso Dim LogFile Dim fLog Set WshShell = CreateObject("WScript.Shell") Set fso = CreateObject("Scripting.FileSystemObject") LogFile = Left(WScript.ScriptName,Len(WScript.ScriptName)-4) & ".log" Set fLog = fso.OpenTextFile(LogFile, 8, True) ... Иногда срывается выполнения скрипта из-за невозможности запуска программы в нем. После этого, несмотря на удаление зависшего задания в taskmgr, планировщик прекращает выполнять скрипт и пишет в журнале, что задача запущена, а ее действие и прекращение не наступает, т.е. зависание. Приходится полностью удалять задачу в планировщике и ее пересоздавать, чтоб дальше работала. Не может ли быть такое поведение из-за того, что нет WshShell.Quit и закрытия fso ? Или это не обязательно? Сервер я после сбоя не перегружаю, потому что пользователи не дают. |
|
Отправлено: 23:05, 23-11-2019 |
Старожил Сообщения: 390
|
Профиль | Отправить PM | Цитировать Цитата Iska:
Цитата Iska:
|
||
Отправлено: 22:26, 26-11-2019 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать pavsem7, так это не «зависло». Как именно у Вас в скрипте организован запуск 1С?
Цитата pavsem7:
|
|
Отправлено: 02:17, 27-11-2019 | #12 |
Старожил Сообщения: 390
|
Профиль | Отправить PM | Цитировать Цитата Iska:
zapuskV7 = """C:\Program Files (x86)\1Cv77\BIN\1cv7.exe""" basefolder = "C:\folder" progV7 basefolder,"C:\1\obr.ert","78" Sub progV7(basef,obr,parametr) WriteLog " ------------------------------" WriteLog " start: " & obr Set xFile = fso.CreateTextFile(basef & "\ExtForms\Oper.txt",True) xFile.WriteLine obr xFile.WriteLine parametr xFile.Close strParam = " enterprise /d" & basef & " /nUser /pPass" WriteLog " " & basef If SV7(basef) = True Then nErrCode = WshShell.Run (zapuskV7 & strParam,1,True) WriteLog " Error code WshShell.Run: " & nErrCode End If WriteLog " end : " & obr End sub Function SV7(dir) SV7 = True fso.CopyFile "C:\folder\1susers.dbf", "C:\1\" If Err.number <> 0 then 'база монопольно открыта WriteLog " start cancelled [open exclusively], cant open dbf file ErrNumber=" & Err.Number err.clear On Error GoTo 0 SV7 = False Exit Function End if Sub WriteLog(strLine) fLog.WriteLine Date & " (" & Time & ") " & strLine end sub |
|
Отправлено: 22:44, 27-11-2019 | #13 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата pavsem7:
|
|
Отправлено: 00:37, 28-11-2019 | #14 |
![]() Ветеран Сообщения: 2798
|
Профиль | Отправить PM | Цитировать pavsem7, файл с расширением *.vbs это просто текстовый файл. А вот расширение само по себе говорит о том что с этим текстом внутри файла дальше делать. В данном случае запуская планировщиком c:\script.vbs ты по факту запускаешь обработчик (wscript.exe или cscript.exe), которому на вход подаётся путь к коду (тексту) который надо выполнить.
Аналогия для лучшего понимания - когда ты открываешь Документ.docx ты ведь не запускаешь процесс Документ.docx. А запускается Microsoft Word (WINWORD.exe) которому на вход подаётся путь к Документ.docx. Тут то же самое. |
Отправлено: 12:05, 28-11-2019 | #15 |
Старожил Сообщения: 390
|
Профиль | Отправить PM | Цитировать Цитата Iska:
|
|
Отправлено: 10:54, 29-11-2019 | #16 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать pavsem7, можно. Покажите скриншот дерева процессов wcsript.exe|cscript.exe → 1C….exe из Process Explorer'а в моменты а) нормальной работы 1С и б) «зависания» 1С.
Тем не менее, продолжаю настаивать на том, что разбираться надо с 1С, а не лепить костыли. |
Отправлено: 09:55, 30-11-2019 | #17 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Можно ли переписать этот vbs скрипт в бат скрипт | ufooo000 | Скриптовые языки администрирования Windows | 1 | 07-02-2017 08:52 | |
CMD/BAT - [решено] Можно ли этот (.vbs) скрипт интегрировать в (.bat) скрипт? | ufooo000 | Скриптовые языки администрирования Windows | 6 | 01-01-2017 10:23 | |
Windows server 2003, можно ли разрешить пользователю завершать сеансы? | vsafonin | Microsoft Windows NT/2000/2003 | 0 | 23-03-2015 21:08 | |
V. 2010 - В АД уже есть exchange 2003, нужно переехать на 2010, нужно ли обновлять схему АД | akaAmigos | Microsoft Exchange Server | 54 | 30-07-2012 14:10 | |
Можно ли (и главное нужно ли) установить INF драйвера для Windows2000 на WindowsXP? | Foma | Microsoft Windows 2000/XP | 7 | 24-03-2005 11:48 |
|