>>lhUrlFile = InternetOpenUrl( lhInternetSession, pcUrlName, '', 0, ; >> INTERNET_FLAG_RELOAD, 0) >>>>
>>>Function getfilefromurl >>>Lparameters lcRemoteFile,lcLocalFile >>>Local lnReturn >>>Declare Integer URLDownloadToFile In urlmon.Dll; >>> INTEGER pCaller, String szURL, String szFileName,; >>> INTEGER dwReserved, Integer lpfnCB >>>lnReturn = URLDownloadToFile (0, lcRemoteFile, lcLocalFile, 0, 0) >>>Return lnReturn=0>>>
>>>Function getdatafromurl >>>Lparameters pcUrlName >>>Declare Integer InternetOpen In wininet.Dll String sAgent, ; >>> INTEGER lAccessType, String sProxyName, ; >>> STRING sProxyBypass, Integer lFlags >>> >>>Declare Integer InternetOpenUrl In wininet.Dll ; >>> INTEGER hInternetSession, String sUrl, String sHeaders,; >>> INTEGER lHeadersLength, Integer lFlags, Integer lContext >>> >>>Declare Integer InternetReadFile In wininet.Dll Integer hfile, ; >>> STRING @sBuffer, Integer lNumberofBytesToRead, Integer @lBytesRead >>> >>>Declare short InternetCloseHandle In wininet.Dll Integer hInst >>> >>>#Define INTERNET_OPEN_TYPE_PRECONFIG 0 >>>#Define INTERNET_OPEN_TYPE_DIRECT 1 >>>#Define INTERNET_OPEN_TYPE_PROXY 3 >>>#Define SYNCHRONOUS 0 >>>#Define INTERNET_FLAG_RELOAD 2147483648 >>>#Define CR Chr(13) >>> >>>Local lsAgent, lhInternetSession, lhUrlFile, llOk, lnOk, lcRetVal, lcReadBuffer, lnBytesRead >>> >>>* what application is using Internet services? >>>lsAgent = "VPF 5.0" >>> >>>lhInternetSession = InternetOpen( lsAgent, INTERNET_OPEN_TYPE_PRECONFIG, ; >>> '', '', SYNCHRONOUS) >>> >>>* debugging line - uncomment to see session handle >>>* WAIT WINDOW "Internet session handle: " + LTRIM(STR(hInternetSession)) >>> >>>If lhInternetSession = 0 >>> Wait Window "Internet session cannot be established" Time 2 >>> Return .Null. >>>Endif >>> >>>lhUrlFile = InternetOpenUrl( lhInternetSession, pcUrlName, '', 0, ; >>> INTERNET_FLAG_RELOAD, 0) >>> >>>* debugging line - uncomment to see URL handle >>>* WAIT WINDOW "URL Handle: " + LTRIM(STR(hUrlFile)) >>> >>>If lhUrlFile = 0 >>> Wait Window "URL cannot be opened" >>> Return .Null. >>>Endif >>> >>>lcRetVal = "" >>>llOk = .T. >>> >>>Do While llOk >>>* set aside a big buffer >>> lsReadBuffer = Space(32767) >>> lnBytesRead = 0 >>> lnOk = InternetReadFile( lhUrlFile, @lsReadBuffer, Len(lsReadBuffer), @lnBytesRead) >>> >>> If ( lnBytesRead > 0 ) >>> lcRetVal = lcRetVal + Left( lsReadBuffer, lnBytesRead ) >>> Endif >>> >>>* error trap - either a read failure or read past eof() >>> llOk = ( lnOk = 1 ) And ( lnBytesRead > 0 ) >>>Enddo >>> >>>* close all the handles we opened >>>InternetCloseHandle( lhUrlFile ) >>>InternetCloseHandle( lhInternetSession ) >>>Clear Dlls InternetOpen,InternetCloseHandle,InternetOpenUrl ,InternetReadFile >>>* return the URL contents >>>Return lcRetVal