Вы можете использовать функции FindFirst / FindNext для циклического прохождения всего в определенной директории.
FindFirst $0 $1 "c:\*.exe"
FileLoop:
StrCmp $1 "" DoneFileLoop ;Check for no files
DetailPrint $1 ;Print file name
;Code to output whatever details you wanted to a txt file here
FindNext $0 $1 ;Get the next file from the list
goto FileLoop ;Go back to the top and check for no files
DoneFileLoop: