Topic "[bug] session.GetFiles uses current dir automatically"

Author Message


While using this library for downloading files ex.
var t = session.GetFiles(path, @"C:\Downloaded", false, transferOptions);

You have localPath as parameter.

Library should throw the exception when directory doesn't exists or application don't have rights to save file.
For now directory is automatically change to 'current directory'.

When library is used in MVC project the default 'current directory' is bin folder.
So IIS pool is reseting, current thread is aborting and there is no exception or error message (in system event log or IIS logs).

Another notation:
var t = session.GetFiles(path, @"Downloaded", false, transferOptions);

in this example situation looks the same. Foler bin/Downloaded is used.

Discovery of this bug took me 5 days.
[View user's profile]
Site Admin
Joined: 2002-12-10
Posts: 24755
Location: Prague, Czechia
I cannot reproduce your problem. Please attach a full session log file showing the problem (using the latest version of WinSCP).

To generate log file, set Session.SessionLogPath. Submit the log with your post as an attachment. Note that passwords and passphrases not stored in the log. You may want to remove other data you consider sensitive though, such as host names, IP addresses, account names or file names (unless they are relevant to the problem). If you do not want to post the log publicly, you can mark the attachment as private.

Though note that it should be "C:\Downloaded\" (note the trailing backslash). But even without the backslash, it does not behave as you describe for me.

You can post new topics in this forum

Search Site

What is WinSCP?

It is award-winning SFTP client, SCP client, FTPS client and FTP client integrated into one software program for file transfer to FTP server or secure SFTP server. [More]

And it's free!


About donations

$9   $19   $49   $99

About donations


WinSCP Privacy Policy

WinSCP License