Hi Martin,
many thanks for sending me.
And also for publishing a new beta on NuGet. That make my (our) live a bit easier :-)
Unfortunately it doesn't work with that yet. I still get the following error message if I set
PublishSingleFile=true
WinSCP.SessionLocalException: The winscp.exe executable was not found at location of the assembly WinSCPnet (), nor the entry assembly Xxxxx (), nor in an installation path. You may use Session.ExecutablePath property to explicitly set path to winscp. exe.
I haven't had time to test if it works when I set
ExecutablePath
. I'll test it with that as soon as possible. It would be great if you could check that again, too.
Note: I use the following method for the correct localization of the
appsettings.json
(works for VS debug, publish as single file and not as single file):
private static string GetBasePath()
{
//The following code configures the application to look at the directory
//that the single-executable application was run from,
//rather than the place that the binaries were extracted to.
//
//That does not work proper:
// Environment.CurrentDirectory or AppDomain.CurrentDomain.BaseDirectory
using ProcessModule processModule = Process.GetCurrentProcess().MainModule;
return Path.GetDirectoryName(processModule?.FileName);
}