Topic "Could not create WinSCP.SessionOptions"

Author Message
silviab2

Guest


Hi,
I have a vbscript that given the remote path, the local path, a start date and a end date, downloads all the file in the remote path updated between the two dates. Running it on a server with OS Windows Server 2008 R 2 Datacenter, it works perfectly, but when I run it on another server with OS Windows Server 2012 R2 Standard, I got the following error:
WScript.CreateObject: Could not create object named "WinSCP.SessionOptions"

Also a pop up windows opens that says:
The following feature couldn't be installed:
.NET Framework 3.5 (includes .NET 2.0 and 3.0)

However, on this server there is already .NET Framework 4.5, so why it seems that it needs version 3.5? Also, in the old server there is only version 4 and there are no problems there.
Do I have to use different commands with version 4.5 of .NET? Or is it mandatory to download the older version?
Below there's the code of the script.
Thanks
Silvia
Code:

<job>
<reference object="WinSCP.Session"/>
<script language="VBScript">
Option Explicit
' Check and read input arguments
Dim numArgs
numArgs = WScript.Arguments.Count
If numArgs < 2 Then
  WScript.Echo "Usage: /DINI:<Now> /DFIN:<Now> /R_PATH:<remote-path> /L_PATH:<local-path>"
  WScript.Quit ( 1 )
End If

Dim valArgs
Set valArgs = WScript.Arguments.Named
If Not ( valArgs.Exists( "R_PATH" ) ) And Not ( valArgs.Exists( "L_PATH" ) ) Then
  WScript.Echo "Usage: /DINI:<Now> /DFIN:<Now> /R_PATH:<remote-path> /L_PATH:<local-path>"
  WScript.Quit ( 2 )
End If

Dim vRemotePath, vLocalePath,vHost,vUser,vPsw
vRemotePath = valArgs.Item( "R_PATH" )
vLocalePath = valArgs.Item( "L_PATH" )
vHost=valArgs.Item( "Host" )
vUser=valArgs.Item( "User" )
vPsw=valArgs.Item( "Psw" )

Dim oFSO
Set oFSO = CreateObject( "Scripting.FileSystemObject" )
If Not oFSO.FolderExists( vLocalePath ) Then
    set oFSO = Nothing
    WScript.Echo "L_PATH does not exists!!!"
    WScript.Quit ( 3 )
End If
set oFSO = Nothing

Dim vDINI, vDFIN
If valArgs.Exists( "DINI" ) Then
  vDINI = cDate(valArgs.Item( "DINI" ))
  If Not isDate(vDINI)  Then
    WScript.Echo "DINI non è una data!!!"
    WScript.Quit ( 4 )
  End If
End If
If valArgs.Exists( "DFIN" ) Then
  vDFIN =cDate(valArgs.Item( "DFIN" ))
  If Not isDate(vDFIN)  Then
    WScript.Echo "DFIN non è una data!!!"
    WScript.Quit ( 5 )
  End If
End If
If Not valArgs.Exists("Host") Then
   WScript.Echo "Manca l'host"
    WScript.Quit ( 6 )
End If
If Not valArgs.Exists("User") Then
   WScript.Echo "Manca l'user"
    WScript.Quit ( 7 )
End If
If Not valArgs.Exists("Psw") Then
   WScript.Echo "Manca la password"
    WScript.Quit ( 8 )
End If
Set valArgs = Nothing
' Setup session options

Dim sessionOpts
Set sessionOpts = WScript.CreateObject( "WinSCP.SessionOptions" )
With sessionOpts
    .Protocol = Protocol_Ftp
    .HostName = vHost
    .UserName = vUser
    .Password = vPsw
End With

Dim session
Set session = WScript.CreateObject( "WinSCP.Session" )
' Connect
session.Open sessionOpts
Set sessionOpts = Nothing

Dim dirInfo
Set dirInfo = session.ListDirectory( vRemotePath )
Dim remoteFile, localeFile, fileInfo
For Each fileInfo In dirInfo.Files
  If fileInfo.LastWriteTime >= vDINI and fileInfo.LastWriteTime <= vDFIN Then
    remoteFile = vRemotePath + fileInfo.Name
    localeFile = vLocalePath + fileInfo.Name
    session.GetFiles( remoteFile, localeFile ).Check( )
    WScript.Echo remoteFile
  End If
Next
Set dirInfo = Nothing
'Disconnect and clean up
session.Dispose
Set session = Nothing
WScript.Quit( 0 )
</script>
</job>
martin
[View user's profile]
Site Admin
Joined: 2002-12-10
Posts: 26572
Location: Prague, Czechia
Did you register WinSCP for COM on the "another server"?
https://winscp.net/eng/docs/library_install#registering

What makes you believe the popup is related to WinSCP or your script? I've never seen it before.
Advertisements

You can post new topics in this forum






Search

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!

Donate

About donations

$9   $19   $49   $99

About donations

Recommend

WinSCP Privacy Policy

WinSCP License