Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

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

Аватара для Creat0R

Must AutoIt


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

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


Хм, задача вроде ясна, попробуем решить:

Код: Выделить весь код
$sSource_Folder = "C:\Folder1"
$sDest_Folder = "C:\Folder2"

$sFolderName = _SearchFile_Proc($sSource_Folder, "*", 0)
$sFileName = _SearchFile_Proc($sSource_Folder & "\" & $sFolderName, "*.txt", 1)

If @error Then Exit MsgBox(48, "Error", "There was an error - no files to copy.")

$sSource_File = $sSource_Folder & "\" & $sFolderName & "\" & $sFileName
$sDest_File = $sDest_Folder & "\" & $sFileName

MsgBox(64, "Results", _
    StringFormat("File found:\n%s\n\nNow we copy this file to destination path:\n%s", $sSource_File, $sDest_File))

FileCopy($sSource_File, $sDest_File, 8+1)

Func _SearchFile_Proc($sPath, $sMask, $iMode=0)
    Local $sRet_Name = "", $nNumber = 0, $nLast_Number = 0
    Local $hSearch, $sNext_FileName

    $hSearch = FileFindFirstFile($sPath & "\" & $sMask)
    If $hSearch = -1 Then Return SetError(1, 0, "")

    While 1
        $sNext_FileName = FileFindNextFile($hSearch)
        If @error Then ExitLoop

        If $iMode = 0 Then
            If Not StringInStr(FileGetAttrib($sPath & "\" & $sNext_FileName), "D") Then ContinueLoop

            $nNumber = Number(StringLeft($sNext_FileName, StringInStr($sNext_FileName, "_")-1))
        Else
            $nNumber = Number(StringTrimRight($sNext_FileName, 4))
        EndIf

        If $nNumber > $nLast_Number Then
            $sRet_Name = $sNext_FileName
            $nLast_Number = $nNumber
        EndIf
    WEnd

    FileClose($hSearch)

    If $sRet_Name = "" Then Return SetError(2, 0, "")
    Return $sRet_Name
EndFunc
Я так понял нужно копировать только файл, без структуры каталогов? Если нужны и каталоги, то в строчке создания переменной «$sDest_File» нужно добавить « & "\" & $sFolderName» после «$sDest_Folder».

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

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

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

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:18, 11-06-2009 | #2