Rivile GAMA sistemos funkcinės galimybės praplėstos CHILKAT bibliotekos objektais.
(nuo 115 RIV_GAMA versijos)
Pilnas sistemos funkcijų ir galimybių aprašymas pateiktas čia: https://www.chilkatsoft.com/refdoc/activex.asp
Pavyzdžiai : https://www.example-code.com/foxpro/default.asp/
Naudojimo apribojimai :
Sintaksė
CHILKAT_OBJECT(tcChilkatObject)
Grąžina
CHILKAT objektą, priešingu atveju - .NULL.
Pastaba :
Naudojant bibliotekos aprašymuose pateiktus objektus, reikia nurodyti tik galutinį objekto pavadinimą (nenurodant CHILKAT bibliotekos versijos). Pavyzdžiui: aprašytas objektas "Chilkat_9_5_0.SFtp" , o kuriamas objektas chilkat_object("SFtp")
Pavyzdys 1
loJson=chilkat_object(„JsonObject“)
Sėkmės atveju grąžinamas sukurtas objektas, nesėkmės atveju grąžinama reikšmė .NULL.
Pavyzdys 2
SFTP funkcijos naudojimas:
LPARAMETERS lcHostName, lnPort, lcUserName, lcPassword, lcFileName
** Pavyzdiniai parametrai:
* m.lcHostName="sftp.example.com"
* m.lnPort=22
* m.lcUserName="myLogin"
* m.lcPassword="myPassword"
* m.lcFileName="c:/tmp/klientai.xls"
LOCAL loSftp,lcHandle
* Sukuriamas SFTP objektas
m.loSftp = chilkat_object("SFTP")
* Nustatomos timeout reikšmės
m.loSftp.ConnectTimeoutMs = 5000
m.loSftp.IdleTimeoutMs = 10000
* Prisijungiame prie SSH serverio (nurodomas serverio adresas ir portas)
IF m.loSftp.Connect(m.lcHostName,m.lnPort)<>1 THEN
l_messagebox(m.loSftp.LastErrorText,16,"Klaida")
RELEASE loSftp
RETURN .F.
ENDIF
* Autentifikuojama su SSH serveriu
* Chilkat palaiko prisijungimus slaptažodžiu, tiek viešuoju raktu (public-key)
IF m.loSftp.AuthenticatePw(m.lcUserName,m.lcPassword)<>1 THEN
l_messagebox(m.loSftp.LastErrorText,16,"Klaida")
RELEASE loSftp
RETURN .F.
ENDIF
* Po autentifikacijos, SFTP turi būti inicializuotas
IF m.loSftp.InitializeSftp()<>1 THEN
l_messagebox(m.loSftp.LastErrorText,16,"Klaida")
RELEASE loSftp
RETURN .F.
ENDIF
* Atidaromas failas rašymui į SSH serverį
* Jei failas egzistuoja, jis bus perrašytas
m.lcHandle = m.loSftp.OpenFile(JUSTFNAME(m.lcFileName),"writeOnly","createTruncate")
IF (m.loSftp.LastMethodSuccess <> 1) THEN
l_messagebox(m.loSftp.LastErrorText,16,"Klaida")
RELEASE loSftp
RETURN .F.
ENDIF
* Įkeliamas lokalus failas į SSH serverį
IF m.loSftp.UploadFile(m.lcHandle,m.lcFileName)<>1 THEN
l_messagebox(m.loSftp.LastErrorText,16,"Klaida")
RELEASE loSftp
RETURN .F.
ENDIF
* Užbaigiamas failo įkėlimas
IF m.loSftp.CloseHandle(m.lcHandle)<>1 THEN
l_messagebox(m.loSftp.LastErrorText,16,"Klaida")
RELEASE loSftp
RETURN .F.
ENDIF
RELEASE loSftp
RETURN .T.