Post a reply

Options
Add an Attachment

If you do not want to add an Attachment to your Post, please leave the Fields blank.

(maximum 10 MB; please compress large files; only common media, archive, text and programming file formats are allowed)

Options

Topic review

martin

Re: Need package with fix

I'm not sure what you expected here. WinSCP .NET assembly still requires separate WinSCP.exe file.
You may want to check: https://winscp.net/eng/docs/library_install#embed
Can you share steps to reproduce your project?
Heiko

Re: Need package with fix

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);
}
martin

Re: NuGet & Package Request

WinSCP 5.18.1 with he fix was released already.
Cristina

Re: NuGet & Package Request

Hallo, same issue to me. Could I have the package too? Thank you.
martin

Re: Need package with fix

@Heiko: Sent.
Heiko

Need package with fix

Hi,
same issue to me. Will there be a new prerelease v5.18.1 on nuget.org?
May I also get a copy of the package in the meantime?

Thanks in advance.
martin

Re: NuGet & Package Request

@danelliott: Sent.
danelliott

NuGet & Package Request

Will this fix be released to NuGet soon? May I also get a copy of the package in the meantime?
I do see it will be packaged with 5.18.1.
martin

It seems that you have to rename the file to WinSCP.5.18.1.nupkg.
sckramer

Can't get it to install:
martin

I've sent you the NuGet package.
sckramer

Thank you for working on this. I tried a few angles testing this as if it were in a NuGet package with no luck, just a variety of errors including the original. Maybe create a test NuGet package?

Build command:
dotnet publish -c Release -r win-x64 --output bin/publish --self-contained=true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:PublishTrimmed=true
martin

Re: .net5 (dotnet core) single-file bundle support

Thanks for your report.

This issue has been added to the tracker:
Issue 1932 – Failure when using from single-file bundle

I'm sending you an email with a development version of WinSCP to the address you have used to register on this forum.
sckramer

.NET 5 (dotnet core) single-file bundle support

Using NuGet package: 5.17.9
C:\temp>cdsutil -sftp -debug


Message:
CodeBase is not supported on assemblies loaded from a single-file bundle.

Type:
NotSupportedException

StackTrace:
   at System.Reflection.RuntimeAssembly.get_CodeBase()
   at WinSCP.Logger.DoGetAssemblyFilePath(Assembly assembly)
   at WinSCP.Logger.GetAssemblyFilePath()
   at WinSCP.ExeSessionProcess.GetAssemblyPath()
   at WinSCP.ExeSessionProcess.GetExecutablePath()
   at WinSCP.ExeSessionProcess..ctor(Session session, Boolean useXmlLog, String additionalArguments)
   at WinSCP.Session.Open(SessionOptions sessionOptions)
   at cdsutil.cdsSFTP.ListDirectory(String remoteDirectory)