1

Тема: Проблема с циклом обработки файлов Loop, *.vsd

Здравствуйте, почему цикл делается всего один раз, а потом будто застывает и не идет дальше работать другими файлами? ( в папке n файлов, но цикл проходит только раз, а мне нужно чтобы цикл прогонял каждый файл, а после того как все файлы он прогнал, написал Done! и офнулся)
P.S. код мб так себе конечно, но сделал как смог.


F9::
IfNotExist, backup
{
FileCreateDir, backup
}
IfNotExist, complete
{
FileCreateDir, complete
}
Loop, *.vsd
{
FilePath:=A_LoopFileFullPath
sleep 100
FileCopy, %FilePath%, backup
Run, %FilePath%
winwait, Visio
 Sleep 2500
 Send {LAlt down}
 Send {S}
 Send {LAlt up}
 Sleep 100
 Clipboard = Уменьшить размер файла
 Send {LCtrl down}
 Send {V}
 Send {LCtrl up}
 Sleep 1000
 Send {Enter}
 sleep 100
 winwait, Удаление скрытой информации
 ControlClick, Button2, Удаление скрытой информации
 sleep 200
 ControlClick, Button3, Удаление скрытой информации
 sleep 200
 ControlClick, Button4, Удаление скрытой информации
 sleep 200
 Send {Enter}
 sleep 200
 Send {LAlt down}
 Send {F4}
 Send {LAlt up}
 Sleep 200
 Send {Enter}
 sleep 200
 winwait, Microsoft Visio
 sleep 200
 ControlClick, Сохранить, Microsoft Visio
 sleep 1000
 FileCopy, %FilePath%, complete
 sleep 200
 FileDelete, %FilePath%
 sleep 200
 }
 Msgbox, Done!
ExitApp
F10:: ExitApp

2 (изменено: shahlik002, 2017-09-20 20:05:58)

Re: Проблема с циклом обработки файлов Loop, *.vsd

Попробуй правильно задать путь.
Например :

Loop, %A_ScriptDir%\*.vsd

3

Re: Проблема с циклом обработки файлов Loop, *.vsd

Вот тебе пример с текстовыми файлами:

SetTitleMatchMode,2
SetKeyDelay,-1,-1
IfNotExist, %A_ScriptDir%\backup
	FileCreateDir, %A_ScriptDir%\backup
	
Loop, %A_ScriptDir%\*.txt
{
FileCopy,% a_loopfilename,%A_ScriptDir%\backup
run,% a_loopfilename
WinWait,Блокнот
send,^{a}Уменьшить размер файла^{s}!{f4}
}

4

Re: Проблема с циклом обработки файлов Loop, *.vsd

А вообще подобное лучше делать с командами PostMessage / SendMessage,если что вот справка:
http://www.script-coding.com/AutoHotkey … ssage.html
Читай,читай,читай и еще раз читай все от первой и до последней буквы.
И так с каждой командой...