Avatar billede pjen2004 Nybegynder
28. september 2005 - 17:49 Der er 6 kommentarer og
1 løsning

Hente billedfil med HTTP - uden at bruge browser

Hejsa! Måske kan et klogt hoved hjælpe med følgende:

Jeg har en applikation udviklet i asp der kan hente kort fra en såkaldt WMS-server på Internettet. Det virker alt sammen helt fint. Lidt ligesom på siden http://kmswww3.kms.dk/kortpaanettet/

Det fungerer ved at spørge med en særlig sætning i browseren - og derefter får man smidt en jpg retur i browseren.

Men, - jeg kunne godt tænke mig, at bruge kortudsnittet (jpg-fil) i et andet program. Jeg kan ikke umiddelbart finde billedet jeg får fra browseren - og jeg vil gerne undgå at have browseren igang i det hele taget. Hvordan kan man ellers bruge HTTP-protokollen til at modtage et kort i form af at billede - og evt. selv bestemme hvor det skal lægges ned lokalt? Jeg har helt styr på, hvordan der skal spørges i en browser - men ikke hvordan gør man uden om den? Jeg er ret sikker på at det kan lade sig gøre - men aner ikke hvordan - eller hor jeg skal starte - da jeg mest har rodet med asp og browser-løsninger.
Avatar billede pjen2004 Nybegynder
28. september 2005 - 17:51 #1
Da jeg skal bruge billedfilen i et andet program - som jeg ikke selv kan lave om på -forestiller jeg mig, at man kan kalde et lille program som "hentfil.exe" med et webkald som argument "http://website/getfile/...." - hvorefter man så får smidt sin jpg-fil ned fra webserveren i et valgt katalog.
Avatar billede joern Nybegynder
28. september 2005 - 22:08 #2
Hej.

Jeg har lavet et lille forsøg med en tekstfil.  Har ikke prøvet med billeder.

hent zip på http://jkfsoft.dk/pakker/inet.zip  Det er et VB5-projekt.

Det indeholder kun en form og så denne kildetekst.

Private Sub Command1_Click()
ind = Inet1.OpenURL("http://jkfsoft.dk/pakker/bemand.dat")
txtmail.Text = ind

Open "d:\hhs\st\forsog.dat" For Output As #1
    Print #1, ind
  Close #1

End Sub



Private Sub Command2_Click()
Inet1.Protocol = icFTP
Inet1.RemoteHost = "jkfsoft.dk"
Inet1.UserName = "jkfsoft.dk"
Inet1.Password = "katja002"
MsgBox Inet1.RemotePort
MsgBox Inet1.URL



End Sub

Private Sub Form_Load()
  Dim ind As String
End Sub

M.v.h.  Jørn
Avatar billede mikker Nybegynder
29. september 2005 - 19:12 #3
Har du husket at ændre passwordet?

- Mikker
Avatar billede joern Nybegynder
29. september 2005 - 19:51 #4
Hej Mikker.

Ja, det var en smutter, men det er ændret, jeg så det straks, da jeg gennemlæste svaret efter det var modtaget af 'Eksperten'.  Selvfølgelig skulle jeg have skrevet nogle stjerner, men sådan går det med 'indsæt'.
I øvrigt har jeg forsøgt med et jpg-billede, men det går ikke.  Man kan med inet kun vælge string eller binary og det er ikke lykkedes med binary.  Den msinet.ocx jeg har er gammel, der kan være kommet en ny og bedre.

Tak for påmindelsen

M.v.h.
Avatar billede olebole Juniormester
03. oktober 2005 - 21:23 #5
<ole>

Jeg tror, det var sjh, der svarede dette i et andet spm, hvor jeg huggede koden:

Option Explicit

Private 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

Public Function DownloadFile(URL As String, LocalFilename As String) As Boolean
    Dim lngRetVal As Long
    lngRetVal = URLDownloadToFile(0, URL, LocalFilename, 0, 0)
    If lngRetVal = 0 Then DownloadFile = True
End Function

Private Sub Command1_Click()
    DownloadFile "http://www.eksperten.dk/img/elogo.png", App.Path & "\elogo.png"
End Sub

/mvh
</bole>
Avatar billede olebole Juniormester
03. oktober 2005 - 21:26 #6
- yups ... her var det:
    http://www.eksperten.dk/spm/650528  :)
Avatar billede pjen2004 Nybegynder
04. oktober 2005 - 07:56 #7
Jeg har fået det til at virke med WinHTTP. Kiggede på:

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winhttp/http/winhttp_start_page.asp

- og fandt hvad jeg skulle bruge. Ellers tak for ulejligheden.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB

MAN Energy Solutions

Cloud FinOps Practitioner

Udviklings- og Forenklingsstyrelsen

ITSM-koordinator

Udviklings- og Forenklingsstyrelsen

Scrum Master

Cognizant Technology Solutions Denmark ApS

Senior Delivery Manager