Creat0R
Цитата:
Как можно переименовать все файлы с одним расширением, в те же имена, но до самого расширения добавить символы _1 - а если уже существуют такие имена, то вместо _1 нужно подставить _2 и т.д.
|
Алгоритм такой:
- Считываем список файлов по требуемой маске в массив ( $s=_FileListToArray($Dir,"*.dat",1) ). Можешь посмотреть пример реалтизации в моем скрипте автоустановки/активации игр Reflexive.
- Пробегаем по массиву (цикл For), попутно анализируя имена файлов: разделяем по точке на имя ($name) и расширение ($ext). Во вложенном цикле по $i проверяем на существование файлы с окончанием имени "_"&$i в целевом каталоге - FileExists, или среди других эл-тов массива $s - при пом. ф-ции StrInStr (тут как тебе больше нравится; первый вариант для параноиков - а вдруг кто-то во время работы скрипта создаст файл с "хвостом" имени "_"&$i). Затем переименовываем текущий файл aka анализируемый эл-т массива в $name&"_"&$i+1&"."&$ext.
Все.
Цитата:
а для посылки сочетании клавиш, нужно сделать WinActivate
|
Ты о Global Hotkeys слышал? Очень удобная штука, особенно когда играешься в какую-нить игру в полноэкранном режиме и нужно уменьшить громкость или перейти к след. трэку в
Winamp-е.
Вот тебе код:
Код:

;путь к Winamp
$WinampPath=RegRead ( 'HKEY_CURRENT_USER\Software\Winamp', '' )
If $WinampPath="" Then $WinampPath=@ProgramFilesDir & '\Winamp'
;включаем Global Hotkeys
IniWrite ( $WinampPath & '\winamp.ini', 'gen_hotkeys', 'enabled', '1' )
;запускаем Winamp
Run ( $WinampPath & '\Winamp.exe' )
;ждем загрузки процесса Winamp-а в память
ProcessWait ( 'Winamp.exe' )
;посылаем команду "Play"
Send ('^!{INS}')
Список хоткеев смотри в настройках
Winamp-а (можно и свои сочетания прописать, причем, сразу в секцию
[gen_hotkeys] файла
winamp.ini).