![]() |
зависает robocopy
фрагмент скрипта:
Код:
Set WshShell = WScript.CreateObject("WScript.Shell") если ручками копипастнуть в cmd вывод Wscript.echo "robocopy /mir /MOVE /r:1 /w:1 /xj " & SrcDir & " " & DstDir то все отрабатывается. |
Опиум, у Вас «SrcDir» и «DstDir», надо полагать, не пустые? Покажите их задание.
|
нет, они не пустые и контрольно перед запуском отображаются. я же написал.
суть в том что копировании начинается корректно... но виснет. |
Опиум, если Вам не трудно — Вы не могли бы читать меня полностью:
Цитата:
Я видел, что Вы написали. Но что именно у Вас отображается «контрольно», какие именно несколько файлов копирует, на каком файле «виснет», как именно Вы определяете, что несколько файлов копирует, что именно «виснет» — знаете пока только Вы. |
тестировал скрипт на папках с фотками. много jpg файлов размером 2-5мб.
несколько файлов копируется в DstDir... и сразу видно на каком завис - jpg открывается с ошибкой. процесс robocopy висит, ресурсов cpu не потребляет, копирование не идет. Сейчас удивился, на w7 отработал, а на w2008r2 виснет. Цитата:
если robocopy c этими параметрами не запускать из скрипта, а копипастнуть руками в cmd то все отработает. |
Продолжайте «копипастить в cmd» и дальше, коль «оно громоздко и не суть», и Вам сложно скопировать сие сюда. Как скажете.
|
Вложений: 1
загрузил скриншот. там видно src и dst папки.
в dst виден файл на котором завис robocopy (DSC_0215.JPG) |
короче. той инфо что давал вам было достаточно. разобрался сам. дело в выводе.
перенаправил все в лог файл и все заработало. ключи robocopy /np /log+: |
Дело не в выводе, а в отсутствии чтения из внутренних буферов для потоков вывода и ошибок в Вашем скрипте: Hang When Reading StdErr/StdOut Properties of WshScriptExec Object.
|
Iska, все верно. нет вывода - нет проблемы. Я так решил, хотя, как указано по ссылке, можно было просто вычитывать буфер.
|
Опиум, нет-нет, всё нормально: выбранный Вами обходной путь вполне возможен, если приемлем для Вас. Главное, что Вы самостоятельно нашли причину подвисания.
|
Время: 07:05. |
Время: 07:05.
© OSzone.net 2001-