Solved. The firewall blocked the transfer
- J22
Before posting, please read how to report bug or request support effectively.
Bug reports without an attached log file are usually useless.
By default it looks for the winscp.exe in the same folder, where the assembly is stored. For that reason, you should extract the package into the same folder, where you have WinSCP installed/extracted. You can also copy all binaries, winscp.exe and winscpnet.dll, into separate folder.
FtpMode mode = passiveMode ? FtpMode.Passive : FtpMode.Active;
SessionOptions sessionOptions = new SessionOptions
{
Protocol = Protocol.Ftp,
HostName = hostname,
UserName = ftpUsername,
Password = ftpPassword,
FtpMode = mode,
Timeout = new TimeSpan(0, 5, 0)
};
using (Session session = new Session())
{
session.ReconnectTime = new TimeSpan(0, 2, 0);
string mainDir = Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location);
string logPath = Path.Combine(mainDir, "ftp.log");
string xmlLogPath = Path.Combine(mainDir, "ftp.xml");
session.DebugLogPath = logPath;
session.XmlLogPath = xmlLogPath;
session.Open(sessionOptions);
TransferOptions transferOptions = new TransferOptions();
transferOptions.TransferMode = TransferMode.Binary;
TransferOperationResult transferResult;
transferResult = session.PutFiles(file, destFileName, false, transferOptions);
transferResult.Check();
...