From your original message it would seem you want to notify the channel whenever any file is create anywhere on some root folder. This would be a serious trouble. But if you are only looking for a specific file name, simply use $isfile(c:\file.txt) to tell whether it exists. And there's no problem to repeat this process every X minutes: /timer 0 300 myCheckingAlias

When you call your batch file, you can redirect the output of ftp.exe to a text file which will be looking like this:
  • ...
    ...
    ftp> put c:\local\file.ext
    200 PORT command successful
    150 Opening ASCII mode data connection for mirc.ini
    226 Transfer complete
    ftp: 8590 bytes sent in 1.10Seconds 7.81Kbytes/sec
    ftp> quit
    221 Goodbye
so that when /xrun finishes and the control returns to mIRC you can tell whether it has succeeded:
  • if $read(c:\file.txt,wn,226*) { msg #chan Successfully updated files. }
    else msg #chan An error occured. Type !debug to get my FTP log
For more info see /help $read