Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
WSH question
Message
De
23/09/2009 12:16:47
 
 
À
23/09/2009 12:03:42
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:
01425772
Vues:
81
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
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform