enabledelayedexpansion вызывает проблему с именами содержащими символ
!
Код:
@Echo Off
for %%e in (*.txt) do (
Set "file=%%~nxe"
Call Set allfiles=%%allfiles%% "%%file:^%%=^^^%%%%"
)
Call Echo programm.exe%%allfiles%%
Pause
и имена лучше брать в кавычки, потому что в них м.б. пробелы и др. спецсимволы, которых в batch'e туёва хуча