Installing WinSCPnet.dll to GAC using PowerShell script on Windows 7 PC

Advertisement

AlanBell68
Joined:
Posts:
4

Installing WinSCPnet.dll to GAC using PowerShell script on Windows 7 PC

For the purpose of backward compatibility with some older applications, I have a Windows 7 environment that is used to maintain and support these applications.

We call WinSCPnet from within a SQL Server Integration Services package, created with SQL Server Data Tools 2010, for deployment on a SQL Server 2012 Server.

We have a new requirement that involves cycling through a list of files that are spread across multiple sub-folders, and upload them to the same folder structure on a SFTP server. As a result, I have downloaded a newer version of the WinSCP automation package (version 5.17.10), which includes the WinSCP executable and the WinSCPnet DLL. This will allow us to take advantage of the additional functionality offered by the RemotePath class. This class is referenced in another C# code sample on this site that happens to meets our new requirements.

Previously, we had been using a version of WinSCPnet.dll (Product Version 5.7.7 per the file info), which I had been able to successfully register to the Global Assembly Cache using the PowerShell script below, copied elsewhere from this site:
Add-Type -AssemblyName "System.EnterpriseServices"
$publish = New-Object System.EnterpriseServices.Internal.Publish
$publish.GacInstall("C:\WinSCP\WinSCPnet.dll")
Write-Host "Press any key to continue ..."
$x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
Having uninstalled the previously installed version of WinSCPnet from the Global Assembly Cache, Attempts to run the above PowerShell script to install the new WinSCPnet version fail.

The script does not return any errors, but WinSCPnet does not show up in the Global Assembly Cache, and the existing script does not work as a result.

I can copy the old version back into the same folder and re-run the script, and that installs the old version back, but not the new version.

I have installed .NET Framework 4.0.30319.01 on the Windows 7 machine, but unsure if I need a later Windows 7 friendly version.

I have also tried to copy in turn the WinSCPnet.dll versions from the net40 and netstandard2.0 folder of the installation files into the same folder as the WinSCP Executable and script, but still no luck.

Any assistance you can give would be appreciated.

Thanks in advance.

Reply with quote

Advertisement

AlanBell68
Joined:
Posts:
4

Installing WinSCPnet.dll to GAC using Powershell Script on Windows 7 PC

Thanks for your response. I have been launching the PowerShell ISE as administrator, and running from there, but unfortunately this hasn't helped. If I go back to the older version of the DLL, I can re-install without an issue, so it would seem that the issue stems from the newer DLL, a new prerequisite (specific .NET version perhaps?) or something else I am failing to grasp.

Thanks again for your help.

Reply with quote

martin
Site Admin
martin avatar

Re: Installing WinSCPnet.dll to GAC using Powershell Script on Windows 7 PC

Sorry, it works for me. It's hard to guess what's wrong/different on your side. Did you try using gacutil instead?

Reply with quote

AlanBell68
Joined:
Posts:
4

Re: Installing WinSCPnet.dll to GAC using Powershell Script on Windows 7 PC

I didn't have GACUtil installed initially, so went ahead and downloaded it. When I attempted to install it, I got an error saying that my .NET framework (4.0) version was an out of date version, and that I needed to update it.

I then went out to grab the latest .NET 4.0 framework version to install it, and it said that the .NET 4.0 version installed was later than the version I was trying to install.

I'm really tearing my hair out with this one.

Thanks & regards,
Alan

Reply with quote

Advertisement

AlanBell68
Joined:
Posts:
4

Re: Installing WinSCPnet.dll to GAC using PowerShell script on Windows 7 PC

I was able to test this approach yesterday, and this seems to have done the trick.

This is probably going to be a much more flexible solution going forward, so thank you for suggesting this.

Thanks you very much for your help!
Regards,
Alan

Reply with quote

Advertisement

You can post new topics in this forum