Array
(
)

Conversão de binários para pdf

Claytonmenegucci
   - 26 ago 2008

pessoal boa tarde, gostaria que vcs me ajudassem com o seguinte problema, tenho gravada no bd um arquivo pdf convertido em binario, qdo clico no link para abrir tenho que salva-lo na maquina para abri-lo, gostaria que abrisse direto, sem ter que salvar na maquina, alguém tem alguma sugestão? a rotina abaixo mostra como a imagem é exibida

Sub MostrarImagem()

Dim IlgImagem As System.Drawing.Image
Dim cmdFoto As New Data.SqlClient.SqlCommand(´Select ImgSequencial from Scanimagens where MseCodSeguro=@MseCodigo´)

´EXECUTA NO BANCO

RotinasDll.ExecSql(´Bd_Imagem´, ´stpWebBuscaImagem ´, ´StoredProcedure´)
RotinasDll.AddValue(´@ImgSequencial´, Request.QueryString(´ImgSequencial´), SqlDbType.Char)

RotinasDll.Comando.Connection.Open()
dr = RotinasDll.Comando.ExecuteReader

dr.Read()
Response.Buffer = False
Response.ClearHeaders()
Context.Response.BinaryWrite(dr(´ImgImagem´))
RotinasDll.Comando.Connection.Close()

Claytonmenegucci
   - 28 ago 2008

obrigado pessoal, mas já consegui resolver da seguinte forma:

Sub MostrarImagem()
Dim ImgImagem As System.Drawing.Image
Dim cmdFoto As New Data.SqlClient.SqlCommand(´Select ImgSequencial from Scanimagens where MseCodSeguro=@MseCodigo´)

´EXECUTA NO BANCO

RotinasDll.ExecSql(´Bd_Imagem´, ´stpWebBuscaImagem ´, ´StoredProcedure´)
RotinasDll.AddValue(´@ImgSequencial´, Request.QueryString(´ImgSequencial´), SqlDbType.Char)

RotinasDll.Comando.Connection.Open()
dr = RotinasDll.Comando.ExecuteReader

dr.Read()
If Trim(dr.Item(´imgTipo´)) = ´application/pdf´ Then
Response.Clear()
Response.ContentType = ´application/pdf´
Response.AddHeader(´Content-Disposition´, ´filename=form.pdf´)

Response.Buffer = False
Context.Response.BinaryWrite(dr(´ImgImagem´))
Response.Flush()
Response.Close()

Else
Response.ContentType = ´image/jpeg´
Response.AddHeader(´Content-Type´, ´image/jpeg´)

Response.Buffer = False
Response.ClearHeaders()
Context.Response.BinaryWrite(dr(´ImgImagem´))
End If
RotinasDll.Comando.Connection.Close()
End Sub