|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Apr 2001
Messaggi: 850
|
[VB] mettere un'immagine da internet
se voglio mettere un img da internet nel mio programma
es. http://www.filmup.com/locand/allaricercadinemo.jpg come devo fare? Io ho provato a fare così: MiaImmagine.Picture = LoadPicture("http://www.filmup.com/locand/allaricercadinemo.jpg") Ma non va ... perchè? Grazie, ciao |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Devi scarica prima l'immagine in locale e poi visualizzarla...
Codice:
Const scUserAgent = "API-Guide test program" Const INTERNET_OPEN_TYPE_DIRECT = 1 Const INTERNET_OPEN_TYPE_PROXY = 3 Const INTERNET_FLAG_RELOAD = &H80000000 Const sURL = "http://www.microsoft.com/index.htm" Private Declare Function InternetOpen Lib "wininet" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long Private Declare Function InternetCloseHandle Lib "wininet" (ByRef hInet As Long) As Long Private Declare Function InternetReadFile Lib "wininet" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer Private Declare Function InternetOpenUrl Lib "wininet" Alias "InternetOpenUrlA" (ByVal hInternetSession As Long, ByVal lpszUrl As String, ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByVal dwFlags As Long, ByVal dwContext As Long) As Long Private Sub Form_Load() 'KPD-Team 1999 'URL: http://www.allapi.net/ 'E-Mail: KPDTeam@Allapi.net Dim hOpen As Long, hFile As Long, sBuffer As String, Ret As Long 'Create a buffer for the file we're going to download sBuffer = Space(1000) 'Create an internet connection hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_DIRECT, vbNullString, vbNullString, 0) 'Open the url hFile = InternetOpenUrl(hOpen, sURL, vbNullString, ByVal 0&, INTERNET_FLAG_RELOAD, ByVal 0&) 'Read the first 1000 bytes of the file InternetReadFile hFile, sBuffer, 1000, Ret 'clean up InternetCloseHandle hFile InternetCloseHandle hOpen 'Show our file MsgBox sBuffer End Sub |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Non ti va perchè in quel parametro il LoadPicture richiede una Path fisica di un file...nn un URL
![]() Per risolvere il tuo problema dovresti scaricare il file da internet e poi con il LoadPicture caricarlo nel tuo prg! Se ti interessa fare così ti do una mano su questo lato ![]()
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
|
Ci sarà una ragione per cui non puoi scaricarti l'immagine con un semplice "salva con nome" e poi metterla in una dir locale, vero?
![]()
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n; Utilizzando atomi trivalenti drogheremo il silicio di tipo p; Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo Ultima modifica di maxithron : 11-01-2004 alle 13:29. |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
come ha detto cionci è corretto, quello è la aprte di codice per scaricare un file!
![]()
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Apr 2001
Messaggi: 850
|
Cazspita qui la cosa diventa sempre più complicata!
e tra l'altro mi dice che Private Declare Function InternetOpen Lib "wininet" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long non vale dentro una routine, ma dove devo incollare quel codice? Grazie, ciao |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
All'inzio della form
![]()
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Apr 2001
Messaggi: 850
|
Ok ora ho capito qualcosa,
Dopo aver scaricato il file che mi serve, qual è il suo riferimento? sBuffer? devo fare Miaimm.picture = loadpicture (sBuffer) ? E se l'img è più grande di 1kb? Sembra che mi funzioni, però solo con i file HTM più piccoli di 1Kb.. Però a me serve una immg completa. Grazie per la pazienza Ultima modifica di beog : 12-01-2004 alle 10:37. |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Prova così
![]() Codice:
Const scUserAgent = "API-Guide test program" Const INTERNET_OPEN_TYPE_DIRECT = 1 Const INTERNET_OPEN_TYPE_PROXY = 3 Const INTERNET_FLAG_RELOAD = &H80000000 Const sURL = "http://www.ublteam.com/Slayer/Comuni.rar" Private Declare Function InternetOpen Lib "wininet" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long Private Declare Function InternetCloseHandle Lib "wininet" (ByRef hInet As Long) As Long Private Declare Function InternetReadFile Lib "wininet" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer Private Declare Function InternetOpenUrl Lib "wininet" Alias "InternetOpenUrlA" (ByVal hInternetSession As Long, ByVal lpszUrl As String, ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByVal dwFlags As Long, ByVal dwContext As Long) As Long Private Const TotDW = 1024 Private Sub Command1_Click() Dim nFreeFile As Integer 'KPD-Team 1999 'URL: http://www.allapi.net/ 'E-Mail: KPDTeam@Allapi.net Dim sFileData As String Dim lSize As Long Dim hOpen As Long, hFile As Long, sBuffer As String, Ret As Long 'Create a buffer for the file we're going to download sBuffer = Space(TotDW) 'Create an internet connection hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_DIRECT, vbNullString, vbNullString, 0) 'Open the url hFile = InternetOpenUrl(hOpen, sURL, vbNullString, ByVal 0&, INTERNET_FLAG_RELOAD, ByVal 0&) 'Read the first 1024 bytes of the file sFileData = "" Do InternetReadFile hFile, sBuffer, TotDW, Ret 'If Ret <> TotDW Then sFileData = sFileData & Left$(sBuffer, Ret) lSize = lSize + Ret ProgressBar1.Value = lSize 'Else 'sFileData = sFileData & sBuffer 'End If DoEvents Loop Until Ret = 0 'clean up InternetCloseHandle hFile InternetCloseHandle hOpen 'scrittura del file nFreeFile = FreeFile Open "ciao.rar" For Output As #nFreeFile Print #nFreeFile, sFileData Close #nFreeFile End Sub
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:42.