|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] скрипт проверяет файл по дате после запускает другой скрипт |
|
VBS/WSH/JS - [решено] скрипт проверяет файл по дате после запускает другой скрипт
|
Новый участник Сообщения: 6 |
Профиль | Отправить PM | Цитировать Я полный чайник в написании скриптов, не могли бы вы мне помочь написать скритп который проверяет файл в определеной папки допустим C:/doci/test и если он 10 дневной давности то запускает другой скрипт для обновления допустим с названием "internet" (скрипт на обновление у меня уже есть)
|
|
Отправлено: 03:02, 31-07-2011 |
Старожил Сообщения: 175
|
Профиль | Отправить PM | Цитировать Option Explicit Dim strFolder Dim strFile Dim strScript Dim objFSO strFolder = "C:\doci\test\" strFile = "file.ext" strScript = "x:\internet.vbs" Set objFSO = CreateObject("Scripting.FileSystemObject") If DateDiff("d", objFSO.GetFile(strFolder & strFile).DateCreated, Date) > 9 Then _ CreateObject("WScript.Shell").Run strScript |
Отправлено: 06:33, 31-07-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Спасибо большое, у меня вот такая ошибка вылетает "сценарий E:\banronv\start.vbs строка 14 символ 84 недопустимый знак код 800A0408 источник ошибка компиляции Microsoft VBScript"
при таком скрипте неподскажите где закралась ошибка Option Explicit Dim strFolder Dim strFile Dim strScript Dim objFSO strFolder = "E:\banronv\demonsr" strFile = "LAST_REC.TXT" strScript = "E:\banronv\interne.vbs" Set objFSO = CreateObject("Scripting.FileSystemObject") If DateDiff("d", objFSO.GetFile(strFolder & strFile).DateCreated, Date) > 9 Then _ CreateObject("WScript.Shell").Run strScript |
Последний раз редактировалось dot85, 31-07-2011 в 14:26. Отправлено: 14:21, 31-07-2011 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать dot85, чтобы не было таких ошибок, код на форуме специально оформляется тэгом «code». И не надо было ничего в нём менять, нужно было копировать всё «как есть»:
If DateDiff("d", objFSO.GetFile(strFolder & strFile).DateCreated, Date) > 9 Then _ CreateObject("WScript.Shell").Run strScript |
Отправлено: 19:46, 31-07-2011 | #4 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать я экспериментировал убирал это символ _ , в одну строку делал даты папки менял и файла дату менял на 10 и более дней скрипт почему то условия не выполняет т.е запуск второго скрипта
может это из за того что второй скрипт это запуск батника в скрытом режиме вот его код Set WshShell = CreateObject("WScript.Shell") WshShell.Run "cmd.exe /c internet.exe", 0, false может его как то объеденить с первым скриптом internet.exe это батник который я конвертировал с помощью этой программы Advanced BAT to EXE Converter v2.45 |
|
Последний раз редактировалось dot85, 31-07-2011 в 20:41. Отправлено: 20:07, 31-07-2011 | #5 |
Старожил Сообщения: 175
|
Профиль | Отправить PM | Цитировать В строке
нужно ставить слэш после маршрута папки:
Иначе файл LAST_REC.TXT не будет найден.
|
Последний раз редактировалось SendMessage, 01-08-2011 в 13:25. Отправлено: 13:07, 01-08-2011 | #6 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Спасибо большое при таком коде он запускается но если я меняю вместо = 0 пишу > 9 то уже не запускается хотя файл от 25 мая а вот при < 9 тоже запускается
If DateDiff("d", objFSO.GetFile(objFSO.BuildPath(strFolder, strFile)).DateCreated, Date) = 0 Then _ CreateObject("WScript.Shell").Run strScript |
Последний раз редактировалось dot85, 01-08-2011 в 13:50. Отправлено: 13:29, 01-08-2011 | #7 |
Старожил Сообщения: 175
|
Профиль | Отправить PM | Цитировать Цитата dot85:
If DateDiff("d", objFSO.GetFile(objFSO.BuildPath(strFolder, strFile)).DateCreated, Date) = 0 Then _ CreateObject("WScript.Shell").Run strScript |
|
Отправлено: 13:51, 01-08-2011 | #8 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать C этим кодом все заработало. Спасибо большое. сейчас еще чучуть поэкперементирую и закрою тему
If DateDiff("d", objFSO.GetFile(objFSO.BuildPath(strFolder, strFile)).DateLastModified, Date) = 0 Then _ CreateObject("WScript.Shell").Run strScript |
Отправлено: 13:59, 01-08-2011 | #9 |
Старожил Сообщения: 175
|
Профиль | Отправить PM | Цитировать Цитата dot85:
|
|
Отправлено: 14:22, 01-08-2011 | #10 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - [решено] Не работает скрипт копирования самого свежего файла по текущей дате | dark-------13 | Скриптовые языки администрирования Windows | 6 | 18-02-2016 08:42 | |
Как сделать скрипт, который запускает определённую программу или файл | VadimN96 | Автоматическая установка Windows 2000/XP/2003 | 1 | 07-01-2011 21:24 | |
CMD/BAT - Как написать CMD скрипт для запуска определенного файла по дате и времени | traxomot | Скриптовые языки администрирования Windows | 1 | 15-12-2010 11:50 | |
VBS/WSH/JS - [решено] Скрипт обновления файла с проверкой по дате изменения. | CtrlD | Скриптовые языки администрирования Windows | 2 | 17-07-2010 10:45 | |
скрипт для дампа базы и отправки на другой хост | nix_lamer | Программирование в *nix | 5 | 12-02-2007 14:09 |
|