Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Alexandrephp

[Resolvido] visual studio

Recommended Posts

estou passando por uma dificuldade no meu codigo.

acontece que esta funcionando, mas quando vou repetir a operação da erro.

seleciono a imagem salvo tudo certo. mas quando repito a operação da erro.

vou postar meu codigo...

estou usando o visual studio 2012. C# "APLICAÇÃO PARA WINDOWS"

meu codigo é

 

 if (Convert.ToInt32(códigoTextBox.Text) > 0)
           {
               openFileDialog1.ShowDialog(); [size="6"][size="3"][b](((((( O ERRO ACONTECE AQUI ))))))))[/b][/size][/size]
               Bitmap bmp = new Bitmap(openFileDialog1.FileName);
               Bitmap bmp2 = new Bitmap(bmp, pictureBox2.Size);

               pictureBox2.Image = bmp2;

               pictureBox2.Image.Save(Application.StartupPath.ToString() + "\\foto\\" + códigoTextBox.Text + ".bmp", System.Drawing.Imaging.ImageFormat.Bmp);

               fotoTextBox.Text = Application.StartupPath.ToString() + "\\foto\\" + códigoTextBox.Text + ".bmp";

               this.Validate();
               this.cadastro_produtosBindingSource.EndEdit();
               this.tableAdapterManager.UpdateAll(this.deliverybdDataSet);


           }
           else
           {
               MessageBox.Show("Salve primeiro o livro para inserir a imagem", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
           }

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aconteçe porque o FileDialog não é descartado após a operação, substitua esta linha:

 

openFileDialog1.ShowDialog();

 

Por:

 

if (openFileDialog1.ShowDialog() == DialogResult.OK)

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok, vou fazer o teste e post aqui. obrigado

 

esta é a mensagem do erro,

 

(Attempted to read or write protected memory. This is often an indication that other memory is corrupt.)

 

* lembrando que o erro acontece somente quando eu insiro a segunda imagem.

 

ainda sem solução............

Compartilhar este post


Link para o post
Compartilhar em outros sites

sim, da como referencia esta linha.

exixte outro metodo para salvar imagens. mas nao quero salvar imagem no banco de dados e sim em uma pasta de fotos. tendo referencia como id do registro.

 

ex. funcionario 1 foto 1

produto 7 foto 7............. assim por diante.

 

eu não estou entendendo o porque disso, sendo que a primeira imagem salva com sucesso. talves seja algo como substituir a imagem com mesmo endereço. da esse mesmo erro tb. será que nao esta como nova foto e sim substituindo ela. de qualquer forma preciso encontrar este erro...

 

obrigado a todos pela ajuda..........

assim que eu conseguir resolver este erro eu posto aqui

valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

private void button1_Click(object sender, EventArgs e)
       {

           if (Convert.ToInt32(códigoTextBox.Text) > 0)
           {
               if (openFileDialog1.ShowDialog() == DialogResult.OK)
               {
                   Bitmap bmp = new Bitmap(openFileDialog1.FileName);
                   Bitmap bmp2 = new Bitmap(bmp, pictureBox2.Size);

                   pictureBox2.Image = bmp2;

                   pictureBox2.Image.Save(Application.StartupPath.ToString() + "\\foto\\" + códigoTextBox.Text + ".bmp", System.Drawing.Imaging.ImageFormat.Bmp);

                   fotoTextBox.Text = Application.StartupPath.ToString() + "\\foto\\" + códigoTextBox.Text + ".bmp";

                   this.Validate();
                   this.cadastro_produtosBindingSource.EndEdit();
                   this.tableAdapterManager.UpdateAll(this.deliverybdDataSet);
               }
               else
               {
                   MessageBox.Show("Erro");
               }

 

eu postei o codigo mais cedo, acho que não salvou. desculpe

 

mas agora segue o codigo.

 

eu refiz o codigo varias vezes e nada, não tenho ideia do que pode ser. estou a ponto de desistir e não colocar imagem.

 

quando da o erro nao chega no else. ja tentei o try cath finnally e nada tambem, nao consigo enxergar o erro.

e muito obrigado pela atençao....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja o erro que dá, se der algum erro:

 

private void button1_Click(object sender, EventArgs e)
       {

           try{
           if (Convert.ToInt32(códigoTextBox.Text) > 0)
           {

		String path = Application.StartupPath.ToString() + "\\foto\\" + códigoTextBox.Text + ".bmp";

               if (openFileDialog1.ShowDialog() == DialogResult.OK)
               {

                   Bitmap bmp = new Bitmap(openFileDialog1.FileName, pictureBox2.Size);  

                   pictureBox2.Image = bmp;
				//Tente também ao invés da instrução de cima
				picturebox2.Load(openFileDialog1.FileName);

                   pictureBox2.Image.Save(path, System.Drawing.Imaging.ImageFormat.Bmp);

                   fotoTextBox.Text = path;

               }

               else
               {
			//código qualquer
                   int i = 0;
               }

			}

			catch (Exception p) { MessageBox.Show("Erro:" + Environment.NewLine + p.Message); }

 

 

Muitas redundâncias no seu código, dei uma limpada, retirei as opções do binding source, caso elas seja estritamente necessárias para atualização de grids ou algo do tipo, pode colocá-las de volta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

boa noite pessoal.

esse codigo que voce me passou deu uns erros.

estou terminando um projeto web em php, não estou conseguindo focar muito nesse erro. sou intermediario em C#.

bom agradeço a ajuda ate o momento. vou tentar solucionar meu problema de outra forma. assim que for solucionado eu posto aqui para todos. quem sabe pode ajudar alguem no futuro...

 

se quizer entrar em contato comigo acesse meu facebook.

estou com o nome faiweb.

o endereço é, http://www.facebook.com/fai.web.3

 

mais uma vez obrigado.

 

obrigado KhaosDoctor

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.