Hangs on putFile - WeOnlyDo Discussion board

Hangs on putFile (wodFtpDLX / wodFtpDLX.NET)

by Vlad, Thursday, April 27, 2017, 19:26 (114 days ago)

Hi, I'm able to connect to the server but it hangs on putFile(C:\Folder\File.TXT, /incoming/folder) command.

Hangs on putFile

by Jasmine, Thursday, April 27, 2017, 19:39 (114 days ago) @ Vlad

Hi Vlad,

can you please give us more details? What component exactly are you using? Do you get any errors?

If you try our sample apps that are distributed with the component, to transfer same file, does it work?

Jasmine.

Hangs on putFile

by Vlad, Thursday, April 27, 2017, 19:51 (114 days ago) @ Jasmine

I'm using SSH/SFTP. It doesn't send an errors. It just sits on the putFile line forever.

init(......)
{
wod.ConnectedEvent += new WeOnlyDo.Client.FtpDLX.ConnectedDelegate(wodFTPDLX_ConnectEvent);
wod.DoneEvent += new WeOnlyDo.Client.FtpDLX.DoneDelegate(wodFTPDLX_DoneEvent);
wod.ProgressEvent += new WeOnlyDo.Client.FtpDLX.ProgressDelegate(wodFtpDLX_ProgressEvent);

keyPassword = _keyPassword;
username = _userName;
host = _host;
licenseKey = _licenseKey;
keyPath = _keyPath;
sourceFilePath = _sourceFile;
remoteFolderPath = _remoteFolderPath;
}

connect(...)
{
WeOnlyDo.Security.Cryptography.KeyManager keyManager = new WeOnlyDo.Security.Cryptography.KeyManager();
keyManager.Load(keyPath, keyPassword);

//Set authentication to public key type.
wodSFTP.Authentication = WeOnlyDo.Client.Authentications.PublicKey;

//Connect private key from wodKeyManager.NET to wodSFTP.NET.
wod.Blocking = true; //Use synchronous connections
wod.Login = username;
wod.Hostname = host;
wod.Protocol = WeOnlyDo.Client.Protocols.SFTP;
wod.LicenseKey = licenseKey;
wod.Port = 22;
wod.PrivateKey = keyManager.ToXmlString(WeOnlyDo.Security.Cryptography.SSHKeyTypes.RSAKey, true);
wodSFTP.Connect();
}

public void wodFTPDLX_ConnectEvent(object Sender, WeOnlyDo.Client.FtpConnectedArgs Args)
{
wod.PutFile(sourceFilePath, remoteFolderPath);
}

Hi Vlad,

can you please give us more details? What component exactly are you using? Do you get any errors?

If you try our sample apps that are distributed with the component, to transfer same file, does it work?

Jasmine.

Hangs on putFile

by Jasmine, Thursday, April 27, 2017, 20:00 (114 days ago) @ Vlad

Hi Vlad.

Please use blocking or events. But not both. You should not execute methods from within events whem using blocking mode since app may hang.

Can you change that in you code and try again?

Jasmine

Hangs on putFile

by Vlad, Thursday, April 27, 2017, 20:04 (114 days ago) @ Jasmine

I commented out the 'blocking' but now the connected event does not fire.

Hangs on putFile

by Vlad, Thursday, April 27, 2017, 20:35 (114 days ago) @ Vlad

This time I kept block set on true and events are firing now. Code is no longer hanging on putFile.

Hangs on putFile

by Jasmine, Thursday, April 27, 2017, 21:51 (114 days ago) @ Vlad

HI Vlad,

excellent, I'm glad it's solved.

I wanted to suggest to move PutFile outside of Connected event, and put it next line after Connect method call - this is typical for blocking operations.

Jasmine.