i added
Code: Select all
Gui,Add,Progress,x10 y10 w461 range0-%MaxLines% vMyProgressBar
Gui,Show
Code: Select all
GuiControl,,MyProgressBar, +1
here's the script
Code: Select all
#NoEnv
SetBatchLines, -1
SourcePath := "C:\New folder (3)\New folder\source.txt"
TargetPath := "C:\New folder (3)\New folder (2)" ; NO CLOSING \
TargetExt := "txt" ; File type
Gui,Add,Progress,x10 y10 w461 range0-%MaxLines% vMyProgressBar
Gui,Show
FileRead, SourceData, %SourcePath%
SourceLines := StrSplit(SourceData, "`r`n")
MaxLines := SourceLines.Length()
Loop Files, %TargetPath%\*.%TargetExt%
{
If (A_Index > MaxLines)
ErrorExit("More files than source lines (" . MaxLines . ")!")
If !(FileObj := FileOpen(A_LoopFileLongPath, "rw"))
ErrorExit("Could not open the target file " . A_LoopFileLongPath . "!")
FileContent := FileObj.Read()
If (Pos := RegExMatch(FileContent, "Pim)^\[content\]$", Len)) {
FileObj.Pos := Pos + Len - 1
FileObj.Write("`r`n" . SourceLines[A_Index])
FileObj.Write(SubStr(FileContent, Pos + Len))
GuiControl,,MyProgressBar, +1
}
FileObj.Close()
If (Pos = 0)
ErrorExit(A_LoopFileLongPath . "`r`ncould not find the [content] line!")
}
ErrorExit(Msg) {
MsgBox, 16, ERROR!, %Msg%
ExitApp
}