Visual FoxPro
Visual FoxPro
Setting Environment Variables for SCP Transfers
See more SCP Examples
Demonstrates how to set remote environment variables for an SCP transfer.Note 1: This example requires Chilkat v9.5.0.79 or greater.
Note 2: Setting environment variables for SCP is only supported by some SSH servers.
Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loSsh
LOCAL loScp
LOCAL loJsonEnvVars
LOCAL lcStrEnvVars
LOCAL lcRemotePath
LOCAL lcLocalPath
lnSuccess = 0
* This example requires the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
loSsh = CreateObject('Chilkat.Ssh')
* First connect to an SSH server.
lnSuccess = loSsh.Connect("example.com",22)
IF (lnSuccess <> 1) THEN
? loSsh.LastErrorText
RELEASE loSsh
CANCEL
ENDIF
* Wait a max of 5 seconds when reading responses..
loSsh.IdleTimeoutMs = 5000
* Authenticate..
lnSuccess = loSsh.AuthenticatePw("myLogin","myPassword")
IF (lnSuccess <> 1) THEN
? loSsh.LastErrorText
RELEASE loSsh
CANCEL
ENDIF
* After the SSH object is connected and authenticated, we use it
* as the underlying transport in our SCP object.
loScp = CreateObject('Chilkat.Scp')
lnSuccess = loScp.UseSsh(loSsh)
IF (lnSuccess <> 1) THEN
? loScp.LastErrorText
RELEASE loSsh
RELEASE loScp
CANCEL
ENDIF
* Specify the environment variables to be set in JSON as follows.
* This example sets two environment variables. One is named "LCS_PASSWORD" and the other "MY_TEST_NAME".
loJsonEnvVars = CreateObject('Chilkat.JsonObject')
loJsonEnvVars.EmitCompact = 0
loJsonEnvVars.UpdateString("LCS_PASSWORD","secret")
loJsonEnvVars.UpdateString("MY_TEST_NAME","abc")
lcStrEnvVars = loJsonEnvVars.Emit()
? lcStrEnvVars
* Setting the SendEnv property causes Chilkat to set each environment variable on the SSH server
* prior to doing the upload or download.
loScp.SendEnv = lcStrEnvVars
* Do the upload..
lcRemotePath = "starfish.jpg"
lcLocalPath = "qa_data/jpg/starfish.jpg"
lnSuccess = loScp.UploadFile(lcLocalPath,lcRemotePath)
IF (lnSuccess <> 1) THEN
? loScp.LastErrorText
RELEASE loSsh
RELEASE loScp
RELEASE loJsonEnvVars
CANCEL
ENDIF
? "SCP upload file success."
* Disconnect
loSsh.Disconnect()
RELEASE loSsh
RELEASE loScp
RELEASE loJsonEnvVars