Avatar billede Slettet bruger
22. juni 2002 - 02:00 Der er 10 kommentarer og
1 løsning

Billed download med Microsoft.XMLHTTP

Hey alle sammen.. jeg har brug for lidt hjælp til følgende..
Jeg har fundet Microsoft.XMLHTTP som et et kanon object til at lave web request med.. nu vil jeg bare gerne downloade en fil med den til serverens hardisk..

F.eks har jeg lavet dette:


<%
  Response.Buffer = True
  Dim objXMLHTTP, xml, fso
  Set xml = Server.CreateObject("Microsoft.XMLHTTP")
  Set fso = Server.CreateObject("Scripting.FileSystemObject")   
  xml.Open "GET", "http://www.bla.dk/test.gif", False

  xml.Send
   
  ' Add a header to give it a file name:
  Response.AddHeader "Content-Disposition", "attachment;filename=test.gif"
   
  ' Specify the content type to tell the browser what to do:
  Response.ContentType = "image/gif"
   
  ' Binarywrite the bytes to the browser
    Response.BinaryWrite(xml.responseBody)
  Set xml = Nothing
%>

Her får jeg så mit billed.. men hvad skal jeg skrive for at serveren gemmer billedet på harddisken.. f.eks C:\test.gif ??
Nogen som kan hjælpe??
Avatar billede tmceu Praktikant
22. juni 2002 - 02:49 #1
Jeg har engang i anden sammenhæng været lidt omkring efter information om XmlHttp og gemte et par links jeg måske kunne få brug for :-)

Umiddelbart tror jeg, at den første er den mest interessante.

http://groups.google.com/groups?q=xmlhttp+save+image+file+%22Joe+Fawcett%22&hl=da&lr=&ie=UTF-8&oe=UTF8&selm=%234DFdwFFBHA.1392%40tkmsftngp05&rnum=1

http://www.eggheadcafe.com/articles/20010824.asp
Avatar billede Slettet bruger
22. juni 2002 - 02:53 #2
jeg kunne ikke rigtigt bruge dem da det første var i javascript og dette skal gøres server site.. :)
Avatar billede tmceu Praktikant
22. juni 2002 - 03:20 #3
Ved du at man kan lave ASP i JavaScript?
Avatar billede Slettet bruger
22. juni 2002 - 03:32 #4
Ja, men jeg kunne ikke lige få dit eksempel til at passe ind i det som jeg havde skrevet op over..
Avatar billede tmceu Praktikant
22. juni 2002 - 03:38 #5
Nej, men jeg vil nu mene at du kommer til at lave ret "drastiske" ændringer i dit script uanset hvad. Jeg mener ikke, at du kan løse problemet ved bare lige at smide et par fikse linier kode ind og så er den hjemme. Men det ville da glæde mig om jeg tog fejl :-)
Avatar billede Slettet bruger
22. juni 2002 - 11:54 #6
Jeg blev nysgerrig, og lavede nedenstående ændringer, der gerne skulle virke.

<%
Response.Buffer = True

Response.ContentType = "image/gif"

Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2

Dim xml, objStream

Set xml = Server.CreateObject("Microsoft.XMLHTTP")

'Opretter forbindelse
xml.Open "GET", "http://www.magik.dk/images/icons/user.gif", False

xml.Send

Set objStream = Server.CreateObject("ADODB.Stream")

objStream.Open
objStream.Type = adTypeBinary

' Henter billedet ind i en ADODB.Stream
objStream.Write(xml.ResponseBody)

' Gemmer billedet (overskriver)
Call objStream.SaveToFile("C:\user.gif", adSaveCreateOverWrite)

objStream.Close

' Udskriver billedet til browseren
Response.BinaryWrite(xml.ResponseBody)

Set objStream = Nothing
Set xml = Nothing
%>
Avatar billede tmceu Praktikant
22. juni 2002 - 14:05 #7
Det er jo samme koncept som i det første link, men jeg må medgive at du har fået det implementeret på en elegant måde - det orkede jeg end ikke at begynde på inat :-)
Avatar billede Slettet bruger
22. juni 2002 - 18:21 #8
tmceu: Det så jeg først bagefter. Jeg så kun kommentaren om at det ikke duede  ;)
Avatar billede Slettet bruger
23. juni 2002 - 00:06 #9
Magik.. Du er en gud.. :) takker
Avatar billede tmceu Praktikant
23. juni 2002 - 01:24 #10
magik >> det såmænd også primært ment som en kompliment for fornem implementering ;-)
Avatar billede Slettet bruger
23. juni 2002 - 10:44 #11
tmceu: Takker :)

testkanin: Selv tak - takker for point :)
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