Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Maza Faka,
Цитата:
В итоге сделал так:
Тоже вариант. А зачем делать If FileMove($dest, $dest, 1) Then? можно просто проверять завершился ли дочерний процесс (PID возвращённый от Run() ).
Я кстати в своём примере немного переборщил - Нужно было наоборот, запускать в главном цикле сам прогресс, а в отдельном процессе копирование, и тогда скррипт намного аккуратнее и короче:

Код: Выделить весь код
Dim $source = "d:\Video\Films\Адреналин.avi", $dest = "c:\Адреналин.avi", $i = 0

ProgressOn("Please wait...", "Now copying file", "", -1, -1, 16)

$CopyPid = Run(@AutoItExe & ' /ErrorStdOut /AutoIt3ExecuteLine "FileCopy(''' & $source & ''', ''' & $dest & ''')"')
While ProcessExists($CopyPid)
    $i += 1
    If $i = 100 Then $i = 0
    ProgressSet($i, $i & " percent")
    Sleep(200)
 Wend

ProgressSet(100, "Done")
Sleep(1000)
ProgressOff()

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community


Отправлено: 17:18, 04-09-2007 | #422