Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
WSH question
Message
De
23/09/2009 14:08:21
 
 
À
23/09/2009 12:24:37
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Titre:
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Windows Server 2008
Divers
Thread ID:
01425768
Message ID:
01425796
Vues:
48
You're welcome!

Getdatafromurl() is great since it has a lot of error checking. Getfilefromurl() is much simpler, but it lacks error checking
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
>Worked!!! Thank you.
>
>>If you know the URL to the PDF:
>>Strtofile(Getdatafromurl(lcURL),lcLocalFile))
>>
>>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
>>
>>
>>>I am tryng to accomplish the following:
>>>Read a PDF file from a web site and then restore that fiel into another location.
>>>Here is some code I have put together so far:
>>>
>>>objxmlHTTP = CreateObject("Microsoft.XMLHTTP")
>>>URL = "http://ufddb-02/ufd/printlabels.pdf"
>>>objxmlHTTP.Open("GET", URL, .f.)
>>>objxmlHTTP.Send()
>>>strHTMLText = objxmlHTTP.ResponseText
>>>
>>>How can I convert strHTMLText back to PDF file?
>>>
>>>Thanks
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform