Что нового

Переименовать файлы

Сообщения
95
Репутация
-1
Доброе время суток. Имеется большая коллекция программ Adobe каждого года т.е Adobe начиная 2018 и заканчивая 2024. Как переименовать файлы установочника каждого года?
Код:
FileMove(@ScriptDir & 'Adobe*Premiere*20**.exe', @ScriptDir & 'Adobe_Premiere_20**_setup.exe', 1)
If FileExists(@ScriptDir & 'Adobe_Premiere_20**_setup.exe') Then
    $FileVersion = FileGetVersion(@ScriptDir & 'Adobe_Premiere_20**_setup.exe','FileVersion')
    FileMove(@ScriptDir & 'Adobe_Premiere_20**_setup.exe', @ScriptDir & 'Adobe Premiere Pro 20** ' & $FileVersion  & '.exe', 1)
EndIf
 

joiner

Модератор
Локальный модератор
Сообщения
3,557
Репутация
628
В чем проблема?
В свойствах файла есть версия продукта. Используйте её.
Все файлы в массив, в цикле получаем версию продукта и переименование
 

SealAlbinos

Продвинутый
Сообщения
155
Репутация
58
Если у вас в папке только exe файлы, которые нужно переименовывать, то как вариант ниже.
Но я закоментил FileMove чтоб вы через MsgBox проверили.
Код:
#include <File.au3>
#include <WinAPIEx.au3>
$Path = "путь до exe файлов" ;пример C:\Users\User\Downloads
$aArray = _FileListToArrayRec($Path,"*.exe", $FLTAR_FILES, 0, $FLTAR_SORT,2)
For $i = 1 to UBound($aArray) - 1
    $FileVersion = FileGetVersion($aArray[$i],'FileVersion')
    MsgBox(0,$FileVersion,$aArray[$i])
    MsgBox(0,"",$Path &"\"& $FileVersion& "_" & _WinAPI_PathFindFileName($aArray[$i]))
    ;FileMove($aArray[$i], $Path &"\"& $FileVersion& "_" & _WinAPI_PathFindFileName($aArray[$i]), 1)
Next
 
Верх