*Начало * Ответить * Статистика * Задать вопрос * Поиск * FAQ * * |
DotFix Forum / Вопросы программирования и исследования защит / Как в VBScript определить окончание работы программы |
Автор | Сообщение |
IgorZ Участник |
Дата: 5 Май 2006 15:01 Надо написать небольшой скрипт, который запускает ночную архивацию. Для архивации используется WinRAR. После создания архива файл должен быть скопирован в определенный каталог. Вопрос в том, что следующая команда VBScript начинает работать не дожидаясь окончания работы WinRAR и копирует файл архива когда он еще не создан до конца. Может кто подскажет как можно отследить окончание работы архиватора ? |
Support staff Участник |
Дата: 10 Май 2006 04:20 Чтобы сказать конкретнее, нужно увидеть часть кода. На bat-файлах это делается вызовом типа такого: ---sample.bat--- do_something.exe call winrar_batch_job.bat rem вызов call должен дождаться возврата управления из winrar. Можно попробовать с консольной версией winrar, должно работать copy c:\..... --sample--- Еще можно посмотреть подсказку к командам cmd.exe и start. Или использовать другую систему бекапа (встроенная в win200 неплоха). Или задействовать scheduled tasks. Вариантов много. |
Admin Администратор |
Дата: 10 Май 2006 21:58 * Поправил: Admin Откуда пример не помню, но он прекрасно справляется с задачей Private Type STARTUPINFO cb As Long lpReserved As String lpDesktop As String lpTitle As String dwX As Long dwY As Long dwXSize As Long dwYSize As Long dwXCountChars As Long dwYCountChars As Long dwFillAttribute As Long dwFlags As Long wShowWindow As Integer cbReserved2 As Integer lpReserved2 As Long hStdInput As Long hStdOutput As Long hStdError As Long End Type Private Type PROCESS_INFORMATION hProcess As Long hThread As Long dwProcessID As Long dwThreadID As Long End Type Private Declare Function WaitForSingleObject Lib "kernel32" (ByVal hH <br>andle As Long, ByVal dwMilliseconds As Long) As Long Private Declare Function CreateProcessA Lib "kernel32" (ByVal lpAppli <br>cationName As Long, ByVal lpCommandLine As String, ByVal lpProce |