Import initial din SVN ROAAUTO/Trunk @HEAD
This commit is contained in:
515
COMUN/programe/oupdate.prg
Normal file
515
COMUN/programe/oupdate.prg
Normal file
@@ -0,0 +1,515 @@
|
||||
*!* 21.07.2009
|
||||
*!* marius.mutu
|
||||
*!* set library to inainte de dezarhivarea arhivelor (vezi comunroa care are vfpencryption si da conflict)
|
||||
|
||||
*!* 19.03.2024
|
||||
*!* marius.mutu
|
||||
*!* updatecheck: s-a inlocuit dezarhivarea cu vfpcompression cu shell.copyhere
|
||||
|
||||
*!* comun\programe\
|
||||
*!* oupdate.prg
|
||||
*!* iniacces.prg
|
||||
*!* procese.prg
|
||||
*!* version.prg
|
||||
*!* xmlaccess.prg
|
||||
*!* xmlparser.prg
|
||||
*!* filebringer.prg
|
||||
*!* wwcodeupdate.prg
|
||||
*!* wwhttp.prg
|
||||
*!* wwapi.prg
|
||||
|
||||
*!* comun\include\
|
||||
*!* security.h
|
||||
|
||||
*!* comun\clase\
|
||||
*!* wwdialogs.vcx
|
||||
|
||||
*!* main.prg
|
||||
*!* PRIVATE gcDirMare
|
||||
*!* gcDirMare=Left(gcAppPath,liat)
|
||||
|
||||
*!* SET CLASSLIB TO wwdialogs ADDITIVE
|
||||
|
||||
#Define crlf Chr(13)+Chr(10)
|
||||
Define Class oUpdate As Custom
|
||||
oInterfataXml = Null
|
||||
oContainerAfisare = Null
|
||||
cFisier = Null
|
||||
cExtensieFisier = [.zip]
|
||||
cExtensieFisierExe = [.exe] && pentru romfast_suport
|
||||
|
||||
Procedure Init
|
||||
Lparameters tcFisier,toContainerAfisare,tcProgram
|
||||
Declare ExitProcess In WIN32API Integer
|
||||
|
||||
Return This.initializeazaDate(tcFisier,toContainerAfisare,tcProgram)
|
||||
Endproc
|
||||
|
||||
Function reinitializeazaDate
|
||||
Lparameters tcFisier,toContainerAfisare,tcProgram
|
||||
This.oInterfataXml = Null
|
||||
Return This.initializeazaDate(tcFisier,toContainerAfisare,tcProgram)
|
||||
Endfunc
|
||||
|
||||
Function initializeazaDate
|
||||
Lparameters tcFisier,toContainerAfisare,tcProgram
|
||||
Local llReturn
|
||||
llReturn = .T.
|
||||
This.oContainerAfisare = toContainerAfisare
|
||||
If Empty(tcFisier)
|
||||
This.cFisier= This.getServer()
|
||||
Else
|
||||
This.cFisier = tcFisier
|
||||
Endif
|
||||
This.oInterfataXml = Createobject("xmlAccess",This.cFisier)
|
||||
If Type('This.oInterfataXml') <> 'O'
|
||||
This.actualizeazaContainerAfisare("Nu se pot face actualiz<69>ri!")
|
||||
If !Empty(tcProgram)
|
||||
lcVersiune = Iif(Left(tcProgram,3)='ROA',Getversion(tcProgram),GetTxtVersion(tcProgram))
|
||||
lcVersiune = Iif(lcVersiune = [0.0.0],[...],[ ] + lcVersiune)
|
||||
This.actualizeazaContainerAfisare("Se lanseaz<61> " + tcProgram + lcVersiune)
|
||||
Endif
|
||||
llReturn = .F.
|
||||
Endif
|
||||
Return llReturn
|
||||
Endfunc
|
||||
|
||||
Procedure actualizeazaContainerAfisare
|
||||
Lparameters tcMesaj &&,tlSelStart modificare ROASTART v 2.0.23
|
||||
If Type('this.oContainerAfisare') = 'O'
|
||||
This.oContainerAfisare.Value = This.oContainerAfisare.Value + tcMesaj + crlf
|
||||
*!* modificare ROASTART v 2.0.23
|
||||
*!* If tlSelStart
|
||||
*!* This.oContainerAfisare.SelStart = Len(This.oContainerAfisare.Value)
|
||||
*!* Endif
|
||||
*!* modificare ROASTART v 2.0.23 ^
|
||||
This.oContainerAfisare.Refresh()
|
||||
Endif
|
||||
Endproc
|
||||
|
||||
Function getServer
|
||||
Local lcnumeserver
|
||||
|
||||
lcnumeserver=[]
|
||||
If Type('goFirma') = 'O' And Type('goFirma.nume_server') <> 'U'
|
||||
lcnumeserver = Alltrim(goFirma.nume_server)
|
||||
Else
|
||||
lcSql = [select nume_server from syn_nom_firme where id_firma=?gnIdFirma]
|
||||
lnSucces = goExecutor.oExecute(lcSql,[crsnf])
|
||||
If lnSucces < 0
|
||||
aMessagebox(goExecutor.ceroare,64,'Eroare')
|
||||
Else
|
||||
Select crsnf
|
||||
lcnumeserver = Alltrim(nume_server)
|
||||
Endif
|
||||
If Used('crsnf')
|
||||
Use In crsnf
|
||||
Endif
|
||||
Endif
|
||||
Return lcnumeserver
|
||||
Endfunc
|
||||
Procedure createUpdateCursor
|
||||
Lparameters tcNumeCursor
|
||||
This.oInterfataXml.getXmlItems(tcNumeCursor)
|
||||
Endproc
|
||||
|
||||
Function Getversion
|
||||
Lparameters tcProgram
|
||||
Return This.oInterfataXml.Getversion(tcProgram)
|
||||
Endfunc
|
||||
|
||||
Function updatecheckTxt
|
||||
Lparameters tcCurrentProg, tlSilent, tlLocalFileExist
|
||||
* tlLocalFileExist: daca exista fisierul pe calculator. se descarca chiar daca versiunile din fisierul de setari si cel de pe internet sunt la fel, dar nu exista fisierul pe local
|
||||
|
||||
Local lcCaleActualizari, lcVersiuneLocal, lcVersiuneInternet, lcFisier, lcFisierVersiuniInternet, lcSectiune, lcExtensieFisier
|
||||
Local lcLibraryPath, loEx As Exception
|
||||
lcLibraryPath = gcDirMare + [COMUNROA\vfpconnection.fll]
|
||||
*!* modificare 06.03.2014 : am adaugat lcExtensieFisier in loc de This.cExtensieFisier
|
||||
lcExtensieFisier = IIF(INLIST(tcCurrentProg, [romfast_suport], [roascreenshot]),This.cExtensieFisierExe,This.cExtensieFisier)
|
||||
If File(lcLibraryPath)
|
||||
Try
|
||||
Set Library To (lcLibraryPath) Additive
|
||||
lcCaleActualizari = [http://www.romfast.ro/romfastsuport/files/]
|
||||
lcFisierVersiuniInternet = [versiune_aplicatii.txt]
|
||||
lcSectiune = [versiuni]
|
||||
lcFisier = lcCaleActualizari + lcFisierVersiuniInternet
|
||||
If !HTTPGet(lcFisier, gcTempPath+lcFisierVersiuniInternet, [MyProgressHandler("] + lcFisier + [")])
|
||||
IF !m.tlSilent
|
||||
polog.Log("Nu se poate descarca fisierul cu versiuni! " + m.lcFisier, Program())
|
||||
Messagebox("Nu se poate descarca fisierul cu versiuni!",16,"Eroare")
|
||||
ENDIF
|
||||
Else
|
||||
lcBuffer=Space(255)
|
||||
|
||||
DECLARE INTEGER GetPrivateProfileString ;
|
||||
IN WIN32API ;
|
||||
STRING cSection,;
|
||||
STRING cEntry,;
|
||||
STRING cDefault,;
|
||||
STRING @cRetVal,;
|
||||
INTEGER nSize,;
|
||||
STRING cFileName
|
||||
|
||||
GetPrivateProfileString(lcSectiune,tcCurrentProg,"",@lcBuffer, Len(lcBuffer), gcTempPath+lcFisierVersiuniInternet)
|
||||
lcVersiuneInternet = Alltrim(Strtran(lcBuffer,Chr(0),""))
|
||||
Delete File (gcTempPath+lcFisierVersiuniInternet)
|
||||
loIniHandler = Createobject("iniaccess")
|
||||
lcVersiuneLocal = loIniHandler.getCValue(lcSectiune,tcCurrentProg)
|
||||
polog.Log("Program: " + tcCurrentProg + " VersiuneLocal: " + lcVersiuneLocal + " VersiuneInternet: " + lcVersiuneInternet + " LocalFileExist: " + TRANSFORM(m.tlLocalFileExist), Program())
|
||||
If ((Empty(lcVersiuneLocal) Or lcVersiuneLocal < lcVersiuneInternet) And !Empty(lcVersiuneInternet)) OR !m.tlLocalFileExist
|
||||
*!* modificare 28.06.2012 : am adaugat This.cExtensieFisier in loc de .exe
|
||||
*!* modificare 06.03.2014 : am adaugat lcExtensieFisier in loc de This.cExtensieFisier
|
||||
lcFisier = lcCaleActualizari + tcCurrentProg + lcExtensieFisier
|
||||
If (Bringfile(lcFisier,tcCurrentProg,gcDirMare+tcCurrentProg+lcExtensieFisier )=.F.)
|
||||
IF !m.tlSilent
|
||||
polog.Log("Eroare la copierea "+tcCurrentProg + ", versiunea "+lcVersiuneInternet+"!", Program())
|
||||
Messagebox("Eroare la copierea "+tcCurrentProg + ", versiunea "+lcVersiuneInternet+"!",16,"Eroare")
|
||||
ENDIF
|
||||
Else
|
||||
loIniHandler.setCValue(lcSectiune,tcCurrentProg,lcVersiuneInternet)
|
||||
Endif
|
||||
Endif
|
||||
Release loIniHandler
|
||||
Endif
|
||||
Catch To loEx
|
||||
IF !m.tlSilent
|
||||
polog.Log('vfpconnection ' + loEx.Message, Program())
|
||||
Messagebox('vfpconnection ' + loEx.Message)
|
||||
ENDIF
|
||||
Endtry
|
||||
Endif
|
||||
Return .T.
|
||||
Endfunc
|
||||
|
||||
Function updatecheck
|
||||
Lparameters tccurrentprog,tlmsgshow,tnTipActualizare,tcDefaultDir
|
||||
* tccurrentprog este programul care trebuie actualizat
|
||||
* lcmsgshow - daca e true,atunci se citeste din ini daca apare mesajul de confirmare sau nu
|
||||
* tnTipActualizare - 0 = este din numeserver.xml ;
|
||||
1 = este din roastart.xml ;
|
||||
2 = programul se actualizeaza singur la pornire
|
||||
* tcDefaultDir - directorul in care se copiaza actualizarile pentru configurarile USER... ;
|
||||
( de ex.: DEV_USERREPORTS e tccurrentprog,dar trebuie sa fie copiat in USERREPORTS )
|
||||
|
||||
Local iniHandler As Object,lnTipFisier,lnTipActualizare && modificare v 2.0.14 : am adaugat lnTipFisier
|
||||
LOCAL lcOldLibrary
|
||||
|
||||
lnTipActualizare = Iif(!Empty(tnTipActualizare),tnTipActualizare,0)
|
||||
*!* modificare v 2.0.6
|
||||
*!* If Used("SERVER_INFO")
|
||||
*!* Use In SERVER_INFO
|
||||
*!* Endif
|
||||
*!* modificare v 2.0.6 ^
|
||||
If lnTipActualizare<>2
|
||||
If At("_",tccurrentprog)#0
|
||||
lccurrentUR=Substr(tccurrentprog,At("_",tccurrentprog)+1)
|
||||
Else
|
||||
lccurrentUR=tccurrentprog
|
||||
Endif
|
||||
|
||||
********************************************
|
||||
* Rularea procedurii de update pentru
|
||||
* toate programele in afara de ROASTART
|
||||
********************************************
|
||||
|
||||
|
||||
lbrun=.T.
|
||||
Local lraspuns
|
||||
lraspuns=4
|
||||
Local loex1,loex2,loex As Exception
|
||||
*!* Verifica daca trebuie rulate
|
||||
*!* procedurile de update
|
||||
This.actualizeazaContainerAfisare(tccurrentprog + " se verific<69> ultima versiune")
|
||||
iniHandler=Createobject("iniaccess")
|
||||
If lnTipActualizare = 0
|
||||
lnTipFisier = 0
|
||||
If Empty(This.cFisier) Or This.cFisier = "ROASTART"
|
||||
XmlData="nu s-a putut conecta"
|
||||
Else
|
||||
polog.Log("S-a gasit serverul "+This.cFisier,Program())
|
||||
polog.Log("Se cauta pentru "+This.cFisier+".XML",Program())
|
||||
XmlData=This.oInterfataXml.ReadXmlFile(tccurrentprog)
|
||||
Endif
|
||||
Else
|
||||
If Left(tccurrentprog,3)="ROA"
|
||||
lnTipFisier = 0
|
||||
Else
|
||||
lnTipFisier = 1
|
||||
Endif
|
||||
polog.Log("Se cauta xml-ul pentru "+tccurrentprog,Program())
|
||||
XmlData=This.oInterfataXml.ReadXmlFile(tccurrentprog)
|
||||
Endif
|
||||
Do Case
|
||||
Case XmlData$"<>(){}"
|
||||
polog.Log("Nu s-au gasit in fisierul Xml inregistrari pentru "+tccurrentprog,Program())
|
||||
Case XmlData$"nu s-a putut conecta"
|
||||
If iniHandler.getURL()!=""
|
||||
This.actualizeazaContainerAfisare("Nu s-a g<>sit actualizare pe internet.")
|
||||
else
|
||||
This.actualizeazaContainerAfisare("Nu s-a g<>sit actualizare <20>n re<72>ea/local.") &&,.T. modificare ROASTART v 2.0.23
|
||||
Endif
|
||||
Otherwise
|
||||
|
||||
If tlmsgshow=.F.
|
||||
lcallowconfirm=.T.
|
||||
Else
|
||||
lcallowconfirm=.F.
|
||||
If(iniHandler.getAllowConfirm())
|
||||
lcallowconfirm=.T.
|
||||
Endif
|
||||
Endif
|
||||
|
||||
If Compareversion(stripXmlVersion(XmlData),XmlData,;
|
||||
IIF(Empty(tcDefaultDir),tccurrentprog,tcDefaultDir),lcallowconfirm,lnTipFisier)
|
||||
polog.Log("S-a gasit versiunea " + stripXmlVersion(XmlData) + " pentru "+tccurrentprog + " (" + Getversion(tccurrentprog) + ")",Program())
|
||||
lcconfirm=0
|
||||
If iniHandler.getAllowConfirm()
|
||||
lcconfirm = aMessagebox(stripXmlMsg(XmlData)+crlf+"Dori<72>i s<>-l <20>nc<6E>rca<63>i?",36,"Confirmare actualizare")
|
||||
Else
|
||||
lcconfirm = 6
|
||||
Endif
|
||||
If lcconfirm = 6
|
||||
This.actualizeazaContainerAfisare(tccurrentprog + " se actualizeaz<61> versiunea "+stripXmlVersion(XmlData))&&,.T. modificare ROASTART v 2.0.23
|
||||
polog.Log("Se incepe actualizarea "+tccurrentprog+" la versiunea "+stripXmlVersion(XmlData),Program())
|
||||
*!* Verifica daca nu cumva programul este in procese
|
||||
*This.oContainerAfisare.value = This.oContainerAfisare.value+"Se verfica daca se poate face updateul" + crlf
|
||||
polog.Log("Se verifica daca nu cumva programul este in procese ",Program())
|
||||
lnWinHandle=1
|
||||
Do While lnWinHandle=1 And lraspuns=4
|
||||
lnWinHandle=0
|
||||
|
||||
If CheckProcess(tccurrentprog)
|
||||
lnWinHandle=1
|
||||
*This.oContainerAfisare.value = This.oContainerAfisare.value+"Nu se poate face updateul(fisier in uz)" + crlf
|
||||
polog.Log("Programul s-a gasit printre procesele care ruleaza",Program())
|
||||
Endif
|
||||
|
||||
If lnWinHandle =1
|
||||
lraspuns=aMessagebox("<22>nchideti toate instantele " + tccurrentprog + " <20>i ap<61>sa<73>i pe Repet<65> pentru a actualiza programul!",21,"Actualizare")
|
||||
Else
|
||||
Exit
|
||||
Endif
|
||||
Enddo
|
||||
If lraspuns=2
|
||||
polog.Log("S-a respins actualizarea",Program())
|
||||
This.actualizeazaContainerAfisare("S-a respins actualizarea " + tccurrentprog)&&,.T. modificare ROASTART v 2.0.23
|
||||
Endif
|
||||
|
||||
If lnWinHandle =0
|
||||
************review ..CV
|
||||
************03.oct.2007
|
||||
polog.Log("Se aduce fisierul",Program())
|
||||
myfilestr=StripXmlFile(XmlData)
|
||||
If iniHandler.getDefault()="URL"
|
||||
If Occurs("http",myfilestr)>0
|
||||
lcFileToBeBrought=myfilestr
|
||||
Else
|
||||
If Left(myfilestr,1)="\"
|
||||
lcFileToBeBrought=Right(myfilestr,Len(myfilestr)-1)
|
||||
Else
|
||||
lcFileToBeBrought=myfilestr
|
||||
Endif
|
||||
lcFileToBeBrought=iniHandler.getURL()+"/"+lcFileToBeBrought
|
||||
Endif
|
||||
lcFileToBeBrought = strtran(lcFileToBeBrought,[\],[/]) && modificare ROASTART v 2.1.3
|
||||
Else
|
||||
If Left(myfilestr,1)="\"
|
||||
lcFileToBeBrought=Right(myfilestr,Len(myfilestr)-1)
|
||||
Else
|
||||
lcFileToBeBrought=myfilestr
|
||||
Endif
|
||||
lcFileToBeBrought=Addbs(ShortPath(iniHandler.getNetworkPath()))+lcFileToBeBrought
|
||||
Endif
|
||||
****************review***Cristian Vasile***
|
||||
****************cale relativa URL**********
|
||||
******************************03.10.2007***
|
||||
If(Bringfile(lcFileToBeBrought,tccurrentprog)=.F.)
|
||||
aMessagebox("A intervenit o eroare la copierea fisierului!",16,"Copiere")
|
||||
polog.Log("A intervenit o eroare la copierea fisierului",Program())
|
||||
*This.oContainerAfisare.txt_Mesaj.Caption = This.oContainerAfisare.txt_Mesaj.Caption+"A intervenit o eroare la copierea fisierului" + crlf
|
||||
Else
|
||||
tempfile = GetCurrentTempPath(tccurrentprog)
|
||||
Cd Addbs(Justpath(tempfile))
|
||||
|
||||
*!* lcEncryptionFile = gcComunPath+"vfpcompression.fll"
|
||||
*!* IF !"vfpcompression"$LOWER(SET("Library"))
|
||||
*!* SET LIBRARY TO (lcEncryptionFile) ADDITIVE
|
||||
*!* ENDIF
|
||||
*!* UnzipQuick(tempfile)
|
||||
|
||||
lcErrorMessage = ''
|
||||
lcUnzipDir = JUSTPATH(m.tempfile)
|
||||
llSucces = UnzipQuickShell(m.tempfile, @lcUnzipDir, @lcErrorMessage)
|
||||
IF m.llSucces
|
||||
polog.Log("S-a actualizat "+ tccurrentprog + " la versiunea "+stripXmlVersion(XmlData),Program())
|
||||
This.actualizeazaContainerAfisare(tccurrentprog + " s-a actualizat la versiunea "+stripXmlVersion(XmlData))&&,.T. modificare ROASTART v 2.0.23
|
||||
ELSE
|
||||
|
||||
polog.Log("Nu s-a actualizat "+ tccurrentprog + " la versiunea "+stripXmlVersion(XmlData),Program())
|
||||
This.actualizeazaContainerAfisare(tccurrentprog + " NU s-a actualizat la versiunea "+stripXmlVersion(XmlData) + " " + m.lcErrorMessage)&&,.T. modificare ROASTART v 2.0.23
|
||||
ENDIF
|
||||
lcDir=Addbs(Justpath(Sys(16,0)))
|
||||
*!* Stergere temporar
|
||||
*!*
|
||||
Try
|
||||
*!* modificare 28.06.2012
|
||||
*!* Delete File "&tempfile"
|
||||
DELETE FILE (tempfile)
|
||||
*!* modificare 28.06.2012 ^
|
||||
Catch To loex2
|
||||
If loex2.ErrorNo=1705
|
||||
This.actualizeazaContainerAfisare("NU s-a putut sterge fisierul temporar!")&&,.T. modificare ROASTART v 2.0.23
|
||||
Endif
|
||||
Endtry
|
||||
|
||||
*!*
|
||||
|
||||
If Atc("PROCEDURE",lcDir) > 0
|
||||
lcDir = Substr(lcDir,Rat(":",lcDir)-1)
|
||||
Endif
|
||||
Cd (lcDir)
|
||||
|
||||
Endif
|
||||
Else
|
||||
* MESSAGEBOX("Inchideti toate instantele de ale ROA - Financiar contabilitate pentru a actualiza programul.",16,"Actualizare !")
|
||||
lbrun=.F.
|
||||
Endif
|
||||
Else
|
||||
*!* Strtofile(Dtoc(Date())+" "+Time()+" > S-a respins de utillizator updateul programului "+tccurrentprog+Chr(13)+Chr(10),gcDirMare + "updates.log",1)
|
||||
polog.Log("S-a respins de utilizator actualizarea programului "+tccurrentprog,Program())
|
||||
|
||||
Endif
|
||||
|
||||
Else
|
||||
polog.Log(tccurrentprog + " " + stripXmlVersion(XmlData)+" este cea mai noua versiune.",Program())
|
||||
This.actualizeazaContainerAfisare(tccurrentprog + " " + stripXmlVersion(XmlData)+" este cea mai nou<6F> versiune.")&&,.T. modificare ROASTART v 2.0.23
|
||||
Endif
|
||||
Endcase
|
||||
|
||||
|
||||
*!* Release InterfataXml
|
||||
Release iniHandler
|
||||
|
||||
|
||||
Return lbrun
|
||||
|
||||
********************************************
|
||||
* Rularea procedurii de update pentru
|
||||
* toate programele in afara de ROASTART
|
||||
********************************************
|
||||
Else
|
||||
Try
|
||||
*!* modificare 28.06.2012
|
||||
*!* Delete file "temporar.exe"
|
||||
Delete File "temporar"+This.cExtensieFisier
|
||||
*!* modificare 28.06.2012 ^
|
||||
Delete File "test.vbs"
|
||||
Endtry
|
||||
*MESSAGEBOX("Verificare")
|
||||
*!* InterfataXml=Createobject("xmlAccess")
|
||||
iniHandler=Createobject("iniaccess")
|
||||
|
||||
XmlData=This.oInterfataXml.ReadXmlFile(tccurrentprog)
|
||||
Do Case
|
||||
Case XmlData$"<>(){}"
|
||||
polog.Log("Nu s-au gasit in fisierul Xml inregistrari pentru "+tccurrentprog,Program())
|
||||
Case XmlData$"nu s-a putut conecta"
|
||||
If iniHandler.getURL()!=""
|
||||
This.actualizeazaContainerAfisare("Nu s-a g<>sit actualizare pe internet.")
|
||||
ELSE
|
||||
This.actualizeazaContainerAfisare("Nu s-a g<>sit actualizare <20>n re<72>ea/local.")&&,.T. modificare ROASTART v 2.0.23
|
||||
Endif
|
||||
Otherwise
|
||||
polog.Log("Am inceput update "+tccurrentprog+" !",Program())
|
||||
polog.Log("Versiunea din xml este " + stripXmlVersion(XmlData))
|
||||
If Compareversion(stripXmlVersion(XmlData),XmlData,tccurrentprog,iniHandler.getAllowConfirm())
|
||||
polog.Log("Am detectat versiuni diferite",Program())
|
||||
lcconfirm=0
|
||||
If iniHandler.getAllowConfirm()
|
||||
lcconfirm = aMessagebox(stripXmlMsg(XmlData)+crlf+"Dori<72>i s<>-l <20>nc<6E>rca<63>i?",292,"Confirmare actualizare")
|
||||
Else
|
||||
lcconfirm = 6
|
||||
Endif
|
||||
|
||||
If lcconfirm = 6
|
||||
polog.Log("Trebuie sa aduca programul",Program())
|
||||
************review ..CV
|
||||
************03.oct.2007
|
||||
myfilestr=StripXmlFile(XmlData)
|
||||
If iniHandler.getDefault()="URL"
|
||||
If Occurs("http",myfilestr)>0
|
||||
lcFileToBeBrought=myfilestr
|
||||
Else
|
||||
If Left(myfilestr,1)="\"
|
||||
lcFileToBeBrought=Right(myfilestr,Len(myfilestr)-1)
|
||||
Else
|
||||
lcFileToBeBrought=myfilestr
|
||||
Endif
|
||||
lcFileToBeBrought=iniHandler.getURL()+"/"+lcFileToBeBrought
|
||||
Endif
|
||||
|
||||
Else
|
||||
If Left(myfilestr,1)="\"
|
||||
lcFileToBeBrought=Right(myfilestr,Len(myfilestr)-1)
|
||||
Else
|
||||
lcFileToBeBrought=myfilestr
|
||||
Endif
|
||||
lcFileToBeBrought=Addbs(ShortPath(iniHandler.getNetworkPath()))+lcFileToBeBrought
|
||||
Endif
|
||||
****************review***Cristian Vasile***
|
||||
****************cale relativa URL**********
|
||||
******************************03.10.2007***
|
||||
If(Bringfile(lcFileToBeBrought,tccurrentprog)=.F.)
|
||||
aMessagebox("A intervenit o eroare la <20>ncercarea copierii fi<66>ierului de actualizare!",16,"Actualizare")
|
||||
Else
|
||||
polog.Log("Am adus programul",Program())
|
||||
*!* tempfile = GetCurrentTempPath(tccurrentprog) && modificare 28.06.2012
|
||||
*!* modificare v 2.0.29
|
||||
*!* lcrunvbs=[Run /N7 ]+Addbs(Substr(gcAppPath,1,Rat([\],gcAppPath,2)))+[COMUNROA\updater.exe ] + ;
|
||||
*!* STRTRAN(Addbs(Justpath(Sys(16,0))),[ ],[~])+tccurrentprog+[.EXE]
|
||||
lcrunvbs=[Run /N7 ]+shortpath(Addbs(Substr(gcAppPath,1,Rat([\],gcAppPath,2))))+[COMUNROA\updater.exe |] + ;
|
||||
shortpath(Addbs(Justpath(Sys(16,0))))+tccurrentprog+[.EXE]
|
||||
*!* modificare v 2.0.29 ^
|
||||
&lcrunvbs
|
||||
polog.Log("Am executat updater.exe",Program())
|
||||
ExitProcess(0)
|
||||
|
||||
Endif
|
||||
Endif
|
||||
Endif
|
||||
Endcase
|
||||
Return .T.
|
||||
Endif
|
||||
Endfunc
|
||||
Enddefine
|
||||
|
||||
Function updatecheckfiles
|
||||
*!* (07.09.09) tlSilent = .T. - daca nu apare mesajul de eroare in caz ca nu poate copia fisierul
|
||||
Lparameters lcFisier,tlSilent
|
||||
Local loUpdate,cLocalFile,cFilePath
|
||||
***************************************
|
||||
*
|
||||
***************************************
|
||||
iniHandler = Createobject("iniaccess")
|
||||
If lcFisier="ROA_SECURITY.XML"
|
||||
cLocalFile = gcDirMare + "Security\" + lcFisier
|
||||
Else
|
||||
cLocalFile = gcDirMare + lcFisier
|
||||
Endif
|
||||
|
||||
If (iniHandler.getNetworkPath()#"" And iniHandler.getDefault()="NetworkPath") && Or iniHandler.getNetworkPath()#"" And iniHandler.getURL()="")
|
||||
cFilePath = Addbs(ShortPath(iniHandler.getNetworkPath())) + lcFisier
|
||||
Else
|
||||
If(iniHandler.getURL()#"" And iniHandler.getDefault()="URL") && Or iniHandler.getURL()#"" And iniHandler.getNetworkPath()="")
|
||||
cFilePath =iniHandler.getURL() +"/"+ lcFisier
|
||||
Else
|
||||
Return .F.
|
||||
Endif
|
||||
Endif
|
||||
|
||||
If(Bringfile(cFilePath,lcFisier,cLocalFile)=.F.) and !tlSilent
|
||||
aMessagebox("A intervenit o eroare la copierea fisierului de actualizare! " + CHR(10) + ;
|
||||
TRANSFORM(cFilePath) + CHR(10) + TRANSFORM(lcFisier) + CHR(10) + TRANSFORM(cLocalFile),16,"Actualizare")
|
||||
Endif
|
||||
Endfunc
|
||||
Reference in New Issue
Block a user