I am afraid you may need to write something?

You could use the FindAllFiles then separate the repeating Directory entries and build a tree file from that, I've done that before using spaces to the left to indicate the depth of the tree.
You could also use the TShellTreeView which allows you to write out to a stream the tree, and you can force it to view all files, however, there is an issue to that component, it only writes out what is visible in the tree.
I suppose you could scan the tree and expand all of the childs so they will be visible and then write it.
Personally myself, I find using a FindFirst ...... and FindNext with some nesting works just fine to build a text tree file.
Jamie