I notice that quite often, a programmer is faced with a problem and doesn't know what to do. The way to approach any problem, is to first ask "What information is available that will shed light on the cause of the problem?"
The way to answer this question is to browse the documentation and online examples with that question in mind.
With Chilkat, the answer is always this: First look at the contents of the LastErrorText property of the object instance for the method call that either failed or didn't behave as expected.
In the FTP case, there is also the SessionLog, but you'll have to make sure to turn on the KeepSessionLog property to get it.
Finally, if a question is posted with no information other than "it failed", then nobody can really help. If somebody's kind-hearted, they might suggest posting the contents of the LastErrorText, or ask politely for more information. But a person with general problem-solving skills would've already found the information. If that information didn't immediately solve the problem, he/she/... would post the information to make it possible for someone to help...