Forum Pplware

Versão Completa: VB .NET Aplicação --> Msg de erro: A colecção foi modificada, a operação de en(...)
Está de momento a ver uma versão reduzida do nosso conteúdo. Ver versão completa com o formato adequado.
Páginas: 1 2
Boas,

Fiz uma aplicação em Visual Basic (Studio 2010 Express) e nunca detectei nenhum erro. Quando instalei noutro computador, para fazer diagnóstico e corrigir erros não detectados no compilador, surgiu-me o seguinte erro:

"Ocorreu uma excepção não processada na aplicação. (...)

A colecção foi modificada: a operação de enumeração poderá não ser executada."

(ver imagem)

Ora, este erro dá-se sempre que eu se fecho um form que abre o form principal. Existem 8 botões que abrem outros form's cujo o encerramento volta a abrir o principal, e apenas 1 deles causa este erro (Ponto estranho nº 1). Não existe nenhuma consequência do erro: funcionamento errado, valores desaparecidos, outros erros, tudo o resto funciona como deve ser.

Não existe nenhuma razão aparente para isto acontecer a não ser que sejam métodos internos: não existe nenhum ciclo que envolva vectores ou colecções que possam ser alteradas, até porque o encerramento apenas tem dois comandos, fechar form actual, lançar form principal e é igual para os 8 forms dos botões (PE nº2).

Depois, este erro apenas acontece em computadores que não têm VB Studio instalado (PE nº3) e, testei, num dos computadores, desinstalar todos os componentes que são instalados com o Studio e o erro não volta a acontecer (PE nº4) o que me leva a querer que seja alguma actualização que ocorre num SP ou Framework comum a todos os windows.

Por tudo isto, estou convencido que seja algum tipo de bug que não acontece nos componentes e actualizações instalados com o Studio. Se alguém já tiver tido algum problema semelhante, tenha alguma ideia do que possa estar a acontecer, tem alguma ideia para uma solução a testar?

Cumprimentos

PS: na imagem assinalei uma procedimento que faz referência ao Form que causa o erro. Alguém mais entendido me confirma que os detalhes na mensagem de erro fazem parte da colecção modificada...


[Imagem: 9518331_Sem_ttulo.jpg]
Tens o net framework instalado no(s) computador(es) que não têm o vb?
Sim,

Inclusive instalei o .Net Framework 4 full num deles e continuou a dar erro.

Até agora:
- Tem ou teve studio - não dá erro
- Não tem - dá
Esse erro acontece quando estas a percorrer uma colecção num ciclo e estás a tentar inserir/eliminar itens.
Eu sei... só que não há ciclos a correr. Por isso é que eu digo que deve ser um ciclo interno...
Não não deve...
Eu não sei muito de informática. Por isso:

Não deve porquê?
O que são os detalhes na mensagem de erro?

... é mesmo um bug?
O erro está no teu programa, no teu código, algum componente externo ou API que estás a utilizar.
Uso o Excel...
No momento em que essa mensagem aparece, estás a executar alguma operação no Excel?
Páginas: 1 2
URL's de Referência