(view source code of ftp_upld.vbs as plain text)
Option Explicit
' Upload the file "test.txt" from the current (local) directory to
' "ftp.myServer.myTld/www/testdir/test.txt"; create the directory
' "testdir" if it doesn't exist; login as "myid" with password "secret".
WScript.Echo FTPUpload( "test.txt", "/www/testdir", _
"ftp.myServer.myTld", _
"myid", "secret", True )
Function FTPUpload( locFile, targetDir, host, user, password, blnMkDir )
' This function uses the free ChilkatFTP ActiveX component
' to upload a single file.
' The remote directory can be specified, but the remote
' file name will be the same as the local file name.
' The function is based on Chilkat's own sample for the ChilkatFTP2 component
' (which is not free): http://www.example-code.com/vbscript/ftpPutFile.asp
'
' Arguments:
' locFile [string] the (path and) file name of the file to be uploaded
' targetDir [string] the (relative) path of the remote target directory;
' if empty, the current remote directory will be used
' host [string] the remote host name (e.g. "ftp.mydomain.org")
' user [string] the login name for the remote host
' password [string] the password for the login account
' blnMkDir [boolean] if True, the remote directory will be created if it
' doesn't exist, otherwise the function will fail if
' the remote directory doesn't exist
'
' The ChilkatFTP ActiveX component can be downloaded from:
' http://www.chilkatsoft.com/download/FtpActiveX.msi
' Documentation can be found at:
' http://www.chilkatsoft.com/refdoc/xChilkatFtpRef.html
'
' Written by Rob van der Woude
' http://www.robvanderwoude.com
' Standard housekeeping
Dim objFSO, objFTP, ok, strRemFile
' Extract the local file name and extension only from its path
Set objFSO = CreateObject( "Scripting.FileSystemObject" )
With objFSO
strRemFile = .BuildPath( targetDir, .GetFileName( locFile ) )
End With
Set objFSO = Nothing
' Create a ChilkatFTP object
Set objFTP = CreateObject( "ChilkatFTP.ChilkatFTP.1" )
' pass the connection properties to the object
objFTP.Username = user
objFTP.Password = password
objFTP.Hostname = host
' Connect, abort and return error message on failure
ok = objFTP.Connect( )
If ( ok <> 1 ) Then
FTPUpload = objFTP.LastErrorText
Set objFTP = Nothing
Exit Function
End If
If targetDir <> "" Then
' If specified, create target directory
If blnMkDir = True Then
objFTP.CreateRemoteDir targetDir
End If
' Change directory remotely, abort and return error message on failure
ok = objFTP.ChangeRemoteDir( targetDir )
If ( ok <> 1 ) Then
FTPUpload = objFTP.LastErrorText
objFTP.Disconnect()
Set objFTP = Nothing
Exit Function
End If
End If
' Upload the file, abort and return error message on failure
ok = objFTP.PutFile( locFile, strRemFile )
If ( ok <> 1 ) Then
FTPUpload = objFTP.LastErrorText
End If
' Disconnect,and release the object
objFTP.Disconnect( )
Set objFTP = Nothing
' Return result
FTPUpload = "Upload succeeded"
End Function
page last modified: 2024-04-16; loaded in 0.0088 seconds