[ASP] Image lezen en weergeven

Pagina: 1
Acties:

  • thesvr
  • Registratie: Oktober 2001
  • Niet online
Ik ben al de hele middag aan het zoeken naar een script die een image uit een directory van de server kan lezen en hem dan als image kan schrijven. Tot zo ver ben ik een aantal uur geleden al gekomen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
<%
Dim image_path, image, readed
iamge = (Request.QueryString("image"))
image_path = "f:\docs\test\ "
    
????
???

response.contentType = "image/gif"
response.BinaryWrite readed
response.end

%>

Na deze code wil ik heb in een htlm bestand kunnen opvragen als "image.asp?image=test.gif".

Kan iemand bij hiermee helpen?

  • Nazgul
  • Registratie: Februari 2000
  • Laatst online: 11-10-2022

Nazgul

Digital Pizza Crew

Helaas kun je voor plaatjes (of andere binaire bestanden) het FileSystem Object niet gebruiken, aangezien deze alleen een OpenAsTextStream methode heeft voor het lezen van bestanden.

Ik heb ditzelfe probleem ook gehad en het opgelost door een COM-Component te schrijven dat een Binary Read voor me doet.

No trees were killed in the sending of this message. However a large number of electrons were terribly inconvenienced.


  • thesvr
  • Registratie: Oktober 2001
  • Niet online
Heb je dat com object mischien?

  • Nazgul
  • Registratie: Februari 2000
  • Laatst online: 11-10-2022

Nazgul

Digital Pizza Crew

Nog even verder gespit. De code van het componentje:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Function readBinFile(ByVal bfilename As String)
    
    Dim fl As Long
    Dim binbyte() As Byte
    Dim binfilestr As String

    On Error GoTo errHandler

    Open bfilename For Binary Access Read As #1

    fl = FileLen(bfilename)
    ReDim binbyte(fl)

    Get #1, , binbyte

    Close #1

    readBinFile = binbyte
    Exit Function

errHandler:
    Exit Function

End Function

En het stukje ASP om hem aan te roepen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<%
    Dim vntStream, bestandsnaam, root, file

        bestandsnaam="blaat.zip"

    Response.buffer = TRUE   
       Response.ContentType = "application/x-msdownload"
    Response.AddHeader "content-disposition", "filename=" & bestandsnaam
    
       Set oMyObject = Server.CreateObject("Spin.BinRead")
    
            
    root=server.mappath(Request.ServerVariables("PATH_INFO"))
    file=cstr(root)& "\" & Rs("Naam")
    vntStream = oMyObject.readBinFile(file)
       
    Response.BinaryWrite(vntStream)   
       
    Set oMyObject = Nothing   

    Response.End
%>

(Was de code lange tijd kwijt. Maar dat probleem is nu opgelost, want de GoT search werkt beter dan mijn HD indeling. :P)

No trees were killed in the sending of this message. However a large number of electrons were terribly inconvenienced.