brunodopredio Posted August 2, 2012 at 07:48 PM Report Share #471317 Posted August 2, 2012 at 07:48 PM Boas, Estou com um problema, salvo um arquivo PDF no banco em um campo de tipo IMAGE, depois de transformá-lo em byte[]. //Prepara o arquivo para salvar em BD FileStream fs = new FileStream(desenho.ArquivoCaminho, FileMode.Open, FileAccess.Read); BinaryReader br = new BinaryReader(fs); byte[] Arquivo = br.ReadBytes((int)fs.Length); br.Close(); fs.Close(); //Conexão e comando de inserção. SqlConnection cn = new SqlConnection(Configuracao.ConexaoCE_NOVO); SqlCommand cmd = new SqlCommand(); cmd.Connection = cn; cmd.CommandText = @"Insert into Desenhos(CodigoDesenho, CodCli, Projeto, Revisao, DataCadastro, DataElaboracao, DataRevisao, Descricao, Status, Arquivo) Values(@CodigoDesenho, @CodCli, @Projeto, @Revisao, @DataCadastro, @DataElaboracao, @DataRevisao, @Descricao, @Status, @Arquivo)"; cmd.Parameters.AddWithValue("@CodigoDesenho", desenho.CodDesenho); cmd.Parameters.AddWithValue("@CodCli", cliente.CardCode); cmd.Parameters.AddWithValue("@Projeto", desenho.Projeto); cmd.Parameters.AddWithValue("@Revisao", desenho.Revisao); cmd.Parameters.AddWithValue("@DataCadastro", desenho.DataCadastro); cmd.Parameters.AddWithValue("@DataElaboracao", desenho.DataElaboracao); cmd.Parameters.AddWithValue("@DataRevisao", desenho.DataRevisao); cmd.Parameters.AddWithValue("@descricao", desenho.Descricao); cmd.Parameters.AddWithValue("@Status", desenho.Status); cmd.Parameters.AddWithValue("@Arquivo",Arquivo); cn.Open(); cmd.ExecuteNonQuery(); cn.Close(); } só que um problema Como abrir este arquivo novamente através de um select, eu só vi trazendo os dados e jogando a imagem em um picture box, mas a imagem fica pequena, será que consigo abrir como pdf ou de outro modo, não encontro nada referente a isso. Obrigado desde já. Link to comment Share on other sites More sharing options...
Caça Posted August 3, 2012 at 08:03 AM Report Share #471347 Posted August 3, 2012 at 08:03 AM Escreve esses bytes no disco e abre o ficheiro. Pedro Martins Não respondo a duvidas por PM Link to comment Share on other sites More sharing options...
brunodopredio Posted August 3, 2012 at 11:34 AM Author Report Share #471368 Posted August 3, 2012 at 11:34 AM Escreve esses bytes no disco e abre o ficheiro. Caça, Consegue me indicar alguma referencia de pesquisa de como fazer isso? Não tenho a menor idéia de como fazer isso..srrs Link to comment Share on other sites More sharing options...
Caça Posted August 3, 2012 at 01:53 PM Report Share #471387 Posted August 3, 2012 at 01:53 PM (edited) using System.IO; using System.Diagnostics; FileStream Fs = new FileStream(@"C:\Pfd.pfd", FileMode.Create); Fs.Write(ImagemDaBD, 0, ImagemDaBD.Length); Process.Start(@"C:\Pdf.pdf"); Edited August 3, 2012 at 01:53 PM by Caça 1 Report Pedro Martins Não respondo a duvidas por PM Link to comment Share on other sites More sharing options...
brunodopredio Posted August 3, 2012 at 02:00 PM Author Report Share #471388 Posted August 3, 2012 at 02:00 PM using System.IO; using System.Diagnostics; FileStream Fs = new FileStream(@"C:\Pfd.pfd", FileMode.Create); Fs.Write(ImagemDaBD, 0, ImagemDaBD.Length); Process.Start(@"C:\Pdf.pdf"); Sim me foi util! mto obrigado! Eu fiz criando arquivo temporário DesenhosBLL obj = new DesenhosBLL(); string file = Path.GetTempFileName() + ".PDF"; File.WriteAllBytes(file, obj.VisualizarDesenhos(3)); var process = System.Diagnostics.Process.Start(file); //File.Delete(file); Obrigado!! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now