Hej på er. Jag har framför mig en AXIS 2100 (Network Camera) och vill med hjälp av Inet-kontrollen ftp:a för att hämta hem bilder. Man kan ju välja metoden OpenUrl för Synkron överföring eller Execute för Asynkron. Jag har testat båda utan framgång. Nedan är VB-Hjälpens exempel som när jag kör det fungerar bra. Men när jag sätter dit min URL till kameran: ftp://10.0.0.192/cgi-bin/fullsize.jpg generera koden en type missmatch på raden b() = Inet1.OpenURL(strURL, icByteArray) Liten enkel API kodsnutt för att hämta en fil: Jag testade kodsnuttarna..... Men dessa funkade inte... Måste du inte spara den till ett nytt filnamn, eller skriv den över?WebbCamera
Är det någon som testat att ladda hem bilder från nätet med inet-kontrollen som kan hjälpa mig. (Observera det är bråttom, kameran skall ta snapshots på en Skotertävling denna helg)
Private Sub Command1_Click()
Inet1.AccessType = icUseDefault
Dim b() As Byte
Dim strURL As String
' Presuming this is still a valid URL.
strURL = "ftp://ftp.microsoft.com/" & _
"developr/drg/Win32/Autorun.zip"
' Retrieve the file as a byte array.
b() = Inet1.OpenURL(strURL, icByteArray)
Open "C:\Temp\Autorun.zip" For Binary Access _
Write As #1
Put #1, , b()
Close #1
MsgBox "Done"
End Sub
/peterhSv: WebbCamera
'Module
Public Declare Function URLDownloadToFile Lib "urlmon" Alias _
"URLDownloadToFileA" (ByVal pCaller As Long, _
ByVal szURL As String, _
ByVal szFileName As String, _
ByVal dwReserved As Long, _
ByVal lpfnCB As Long) As Long
'Funktion
Dim lReturn As Long
lReturn = URLDownloadToFile(0, "http://abstractvb.com/default.asp", _
"c:\default.asp", 0, 0)Sv: WebbCamera
API i modulen... module1
Private Sub Command1_Click()
'Funktion
Dim lReturn As Long
lReturn = URLDownloadToFile(0, "10.0.0.192", "c:\jpg\bilden.jpg", 0, 0)
Picture1.Picture = LoadPicture("c:\jpg\bilden.jpg")
End Sub
Men det är lugnt jag har fått det att funka i alla fall. Men någon kanske orkar engagera sig i varför snutten ovan inte funkar! Nu ser jag nåt man kanske måste ange protokollet för IP-adressen.
Vänta......
Japp det var det!
Men den verkar cacha bilder för den laddar bara ner den en gång sedan är det alltid samma bild fast jag reloadar....Sv: WebbCamera
Testa med enn annan sida.
Om den inte skriver över existerande filer,
så kan du använda datum och/eller tid i filnamnet.
Ex.
FileName = "c:\Bild" & Format$(Now(),"YYMMDDHHNNSS") & ".jpg"
FileName = "c:\Bild" & Format$(Now(),"HHNNSS") & ".jpg"
FileName = "c:\Bild" & Format$(Now(),"HHNN") & ".jpg"
Eller denna funktionen:
Ex.
FileName=GetFilename("C:", "Bild", ".jpg")
FileName=GetFilename("C:\Bilder", "Bild", ".jpg")
Public Function GetFilename(FilePath, FilePrefix, FileSuffix)
Dim FileIndex As Integer
Dim FileName As String
Do
FileIndex = FileIndex + 1
FileName = FilePath + "\" + FilePrefix & FileIndex & FileSuffix
Loop While Len(Dir(FileName))
GetFilename = FileName
End Function