Upgraded from 6.07 to 6.10. Now can't get wwsftp or wwsmtp to work due to issue with wwdotnetbridge. The .dll is NOT blocked. I have V2-V4 .net installed. NOTE: This is on a 2003 server. It does work on another newer machine (Windows 10). But need to work on a customers old 2003.
Any ideas on how to get working on a 2003 server?
This should work. .NET 4.0 works on Server 2003 and the DLL is compiled for 4.0 - later versions of .NET don't run on Server 2003 any longer. But 4.0 should work.
Make very sure .NET 4.0 is really installed and working. Check here: http://smallestdotnet.com/
You probably will have to run the downloaded executable.
To check wwDotnetBridge try doing this (if you have FoxPro installed on a server):
loBridge = CREATEBRIDGE("wwDotnetBridge") loBridge.GetDotnetVersion()
Also make sure you have matching versions of wwipstuff.dll and wwDotnetBridge.prg and they've been copied to your application folders.
Worst case: use the old DLL compiled for .NET 2.0 (from 6.07) - that should continue to work.
+++ Rick ---
Smallestdotnet.com reports: 4.0.30319.1
But when I look at Add/Remove programs, .net is listed as "4 Client Profile" and another labeled "4 Extended". So I uninstalled these, then downloaded and installed the "Full" .net framework 4.0. But it installed the "Client" again (according to Add/remove list).
The wwipstuff.dll matches the wwdotnetbridge.dll, but is different from the wwdotnetbridge.prg.
In attempt to run under older version, I Copied wwsftp.prg from 6.10 install folder to 6.07 install folder. But now getting "Unable to load SFTP Client. Make sure Renci.SshNet.dll is available. Type not loaded. Please load call LoadAssembbly first."
So copied Renci.sshnet.dll from the 6.10 to 6.07. But still getting same error as above.
Yes you'll need to explicitly specify .NET 2.0 because the new default is 4.0. I also believe the Renci library won't work with .NET 2.0 only.
If you have the client profile that's not going to work as wwDotnetBridge loads other libraries right out of the gate. This is one reason I was thinking about actually jumping straight to 4.5 (rather than 4.0) but Server 2003 was a concern.
Just look for a direct download link for the full framework 4.0 install. You definitely do not want the client profile.
It should be this one:
+++ Rick ---
Uninstalled 4.0, downloaded .net 4.0 Full version, installed. Add/Removes shows Client+Enhanced. Online says that if you have "Enhanced", that is equivalent to "Full" 4.0.
Copied 6.7 wwipstuff.dll & wwdotnetbridge.dll to 6.10 folder along with wwdotnetbridge.prg.
Then tried this:
do wwdotnetbridge lobridge = createobj("wwdotnetbridge") ?lobridge.getdotnetwersion() reports: 4.0.30319.1
Then tried (which is the whole point):
do wwsftp losftp = createobj('wwsftp')
But get error: "Unable to load SFTP Client. Make sure Renci.SshNet.dll is available." I checked and the renci.sshnet.dll is in the wconnect folder.
So, It seems I am stuck. Can't get wwdotnetbridge to work with 6.10 version (unable to load Clr instance). Can load wwdotnetbridge using 6.07, but can't load wwsftp due to renci.sshnet.dll.
NOTE: This all works on newer OS. So working on using 2012.
Hmmmm... that's odd. If wwDotnetBridge works then the rest of things should also work. There's no reason for the SSH library to not work (it's a 2.0 assembly).
Have you checked to see if it's blocked? Check the .NET DLLs in your distribution folder and make sure they are unblocked (Newtonsoft.Json, MarkDig, RenciSshNet).
If you zipped and downloaded they'll be blocked by Windows (although not sure if server does that or not).
+++ Rick ---