I have basically this code (simplified):
CkFtp2 ftp; ..... ftp.put_Password(L"äëü~`€"); // a pwd with "weird" characters ftp.connect(); // connect works ftp.disconnect(); ftp.connect(); // this connect fails (wrong password)
After a lot of searching and debugging I discovered the issue: At the first connect Chilkat uses the default "ansi" encoding for the password. My ftp supports UTF-8 so chilkat automatically sets the Command Charset to "utf-8". At the second connect chilkat will send the password using the utf-8 charset and I guess that is not expected by the FTP server.
I understand why Chilkat switches to utf-8, but I think chilkat should always use ansi while connecting.