Sorry, I don't think ftp has it's own parameter passing scheme
I also noticed a bug in my script, I thought i might have made the mistake after I wrote it but wasn't at my computer to check.
Each of the echo's (after the first) should have >> not just one >
GetFile.bat
@ECHO OFF
echo open ftp.mysite.net > %temp%\ftp.data
echo bdetchevery >> %temp%\ftp.data
echo mypasswd >> %temp%\ftp.data
echo get %1 >> %temp%\ftp.data
echo bye >> %temp%\ftp.data
ftp -s:%temp%\ftp.data
erase %temp%\ftp.data
Otherwise only the last line gets written to the file.
If you want to use less echos you could create a text file, say callled ftp.txt and put the following into it
open ftp.mysite.net
bdetchevery
passwd
then you could use the commands
type ftp.txt > %temp%\ftp.data
echo get %1 >> %temp%\ftp.data
echo bye >> %temp%\ftp.data
ftp -s:%temp%\ftp.data
erase %temp%\ftp.data
this use's less echo's