Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3/4 Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(VBScript) SFTP Read Text File to StringDemonstrates how to download a text file from an SSH server directly into a string variable.
Dim fso, outFile Set fso = CreateObject("Scripting.FileSystemObject") Set outFile = fso.CreateTextFile("output.txt", True) ' Important: It is helpful to send the contents of the ' sftp.LastErrorText property when requesting support. set sftp = CreateObject("Chilkat_9_5_0.SFtp") ' Any string automatically begins a fully-functional 30-day trial. success = sftp.UnlockComponent("Anything for 30-day trial") If (success <> 1) Then outFile.WriteLine(sftp.LastErrorText) WScript.Quit End If ' Set some timeouts, in milliseconds: sftp.ConnectTimeoutMs = 5000 sftp.IdleTimeoutMs = 15000 ' Connect to the SSH server. ' The standard SSH port = 22 ' The hostname may be a hostname or IP address. hostname = "www.my-ssh-server.com" port = 22 success = sftp.Connect(hostname,port) If (success <> 1) Then outFile.WriteLine(sftp.LastErrorText) WScript.Quit End If ' Authenticate with the SSH server. Chilkat SFTP supports ' both password-based authenication as well as public-key ' authentication. This example uses password authenication. success = sftp.AuthenticatePw("myLogin","myPassword") If (success <> 1) Then outFile.WriteLine(sftp.LastErrorText) WScript.Quit End If ' After authenticating, the SFTP subsystem must be initialized: success = sftp.InitializeSftp() If (success <> 1) Then outFile.WriteLine(sftp.LastErrorText) WScript.Quit End If ' Open a file on the server: handle = sftp.OpenFile("hamlet.xml","readOnly","openExisting") If (sftp.LastMethodSuccess <> 1) Then outFile.WriteLine(sftp.LastErrorText) WScript.Quit End If ' Get the total size of this file (in bytes) bFollowLinks = 0 bIsHandle = 1 ' bFollowLinks is ignored because we are passing a handle ' and not a remote filename. ' There are alternative methods for handling file sizes ' greater than 32-bit. (See the reference documentation.) numBytes = sftp.GetFileSize32(handle,bFollowLinks,bIsHandle) If (numBytes < 0) Then outFile.WriteLine(sftp.LastErrorText) WScript.Quit End If ' The charset indicates the character encoding of the text ' file on the SSH server. Setting the charset correctly ' allows the Chilkat SFTP component to correctly interpret ' the bytes that represent the characters. charset = "ansi" fileContents = sftp.ReadFileText(handle,numBytes,charset) If (sftp.LastMethodSuccess <> 1) Then outFile.WriteLine(sftp.LastErrorText) WScript.Quit Else outFile.WriteLine("Received file:") outFile.WriteLine(fileContents) End If ' Close the file. success = sftp.CloseHandle(handle) If (success <> 1) Then outFile.WriteLine(sftp.LastErrorText) WScript.Quit End If outFile.WriteLine("Success.") outFile.Close |
© 2000-2016 Chilkat Software, Inc. All Rights Reserved.