From the MSDN Documentation :
FOF_NORECURSION
Perform the operation only in the local directory. Do not recursively work in subdirectories , which is the default behavior .
It seems your answer is right there. It should automatically return unless you ask him not to.
EDIT: There seems to be a problem with your flags. You need OR them together, not add them together. Since FOF_NO_UI already includes FOF_NOERRORUI , adding it again can change the value, and you can accidentally add some things together to add FOF_NORECURSION . It should look like this:
fFlags := FOF_FILESONLY or FOF_NOCONFIRMATION or FOF_NO_CONNECTED_ELEMENTS or FOF_NOERRORUI or FOF_NO_UI;
source share