That is the data is already provided by another program, or user must type it manually. I mean these two states:
dir /b /s *.* | myprogram
and
myprogram
In second case the program would be waiting for user input. Is there a way to prevent that ?