I need to set up a connection to an FTP server, but there are a couple of caveats. I CANNOT use third-party software (period). It has to be done in Windows Explorer.

The other caveat is that there is an @ symbol in both the login & the password. So I'm trying to connect, using Windows FTP to an address that looks like; user@name:pass@word@FTP.server.com

Is there anything I can do as far as escape characters go maybe? This server uses UTF-8 which has @ as %40, but I haven't been able to get that to work.

  • I don't know what the escape character is for the Microsoft FTP client, since I've never had to escape an "@" for it, but in for loops in Microsoft Windows batch files it is ^, so you could try that. – moonpoint Jul 7 '15 at 0:17
  • Hi, thanks for the suggestion. I gave it a try, with user^name:pass^word@FTP.server.com but it didn't work :( – Karl Is Wright Jul 7 '15 at 3:50
  • 'escape character' means use it directly before the character you need to escape [to be read as string not control] so 'user^@name' Another common escape character is \ so maybe try user\@name – Tetsujin Jul 7 '15 at 6:37
  • OK, thanks for clearing that up, I'll give that a shot. – Karl Is Wright Jul 7 '15 at 22:43
  • Let us know if it works - it would make a nice canonical answer for future Googlers – Tetsujin Jul 8 '15 at 19:35

I set up a TCP server using nc. By using the following URL I got the following output (I greeted and answered the client by hand). The version of Internet Explorer I used was Internet Explorer 6 from modern.ie.


220 hi
USER user@name
331 ok
PASS pass@word
230 ok
opts utf8 on

It looks to me like escaping with %40 works just fine. If it doesn't work in your case, I'd check if there isn't some server problem. Ideally, try to log in with another client just to check your setup. Internet Explorer has no issue supporting percent-encoding.


Karl, did you try in filemode?

ftp -s:filename_containing_user_credentials ftp_server_address

Input your user nm and credentials as first 2 lines of the file as below.

other commands
  • I haven't heard of that one before. Does it matter what extension the filename has? can it just be a .txt file? – Karl Is Wright Jul 7 '15 at 22:44
  • Name or extension of file may not matter. I have used with .bat files in past. You can give all the ftp commands in the file including the host address. Also If your host implements auto login add argument -n to the command. – Gautam Jose Jul 8 '15 at 10:35
  • 1
    OK, so as a test, I was able to use the ftp -s:filename method to connect to an ftp server. Syntax used (in cmd); ftp -s:filename.txt ftp.contoso.ca I wasn't able to put the ftp server in the file. I have not yet tried with the @ symbol. When I do, I'll share the result. – Karl Is Wright Jul 8 '15 at 22:02
  • if you need to add server address, you need to add below command in file. open ftp.contoso.ca File is just a medium to give ftp commands you usually input in ftp console. In short ftp :s command execute a batch of ftp commands. – Gautam Jose Jul 9 '15 at 5:18
  • 1
    OK, for some reason it's not letting me enable either FTP Server or Extensibility. Working on getting that up again. When I do get to FTP Auth, what do I do in that window? Do I just enable Basic Authentication? What difference will this make, it sounds like this is only for people running their own FTP server; I'm not running an FTP server, I'm trying to connect to some else. – Karl Is Wright Jul 10 '15 at 20:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.