none
Aplicação dá erro em setup criado pelo VS RRS feed

  • Pergunta

  • Pessoal, criei um aplicativo com o VS 2010 em C# e banco SQL Server Express (nativo).

    Gerei o setup com o Setup Wizard mas sem a dependencia so SQL Server pois vou apontar para um servidor e nao local.

    Porém o setup dá erro em outras máquinas, quero dizer, ele instala mas a aplicacao nao abre.

    O que pode ser? Será que vai precisar instalar o sql server em todas as máquinas cliente?


    Tecnólogo em Análise e Desenvolvimento de Sistemas http://letrasdemusicas.webng.com
    sexta-feira, 15 de julho de 2011 19:45

Respostas

  • Bom galera, depois de vários dias e vários testes, descobri a falha.

    É uma coisa bem besta, mas eu sinceramente não sabia que isto ocorreria, então vou deixar a solução aqui porque acho que pode ajudar alguém no futuro.

    O ícone principal da minha aplicação tem as medidas de 256x256 e o Windows XP não suporta essa qualidade de imagem para os ícones. Como estou desenvolvendo sobre o Win 7 não dava erro aqui, só na máquina cliente. Foi só tirar um único ícone e todo o sistema funcionou perfeitamente.

    É galera, é isso aí, vivendo e aprendendo!!!


    Tecnólogo em Análise e Desenvolvimento de Sistemas
    http://letrasdemusicas.webng.com
    • Sugerido como Resposta [J]unior quarta-feira, 20 de julho de 2011 19:01
    • Marcado como Resposta AndreAlvesLimaModerator quarta-feira, 20 de julho de 2011 19:07
    quarta-feira, 20 de julho de 2011 18:43

Todas as Respostas

  • Jefferson,

    Você sabe qual é o erro que está acontecendo?

    Entre as possíveis causas pode ser alguma DLL que está faltando ou alguma exceção não tratada.

    at.,


    Rogério de Resende Ohashi | Ohashi.NET (.NET, Security, C#, WinForms, WCF, Workflow, Azure, Windows Phone, Mono)
    sexta-feira, 15 de julho de 2011 19:57
  • Então Rogério, não sei qual o erro.

    No meu note, eu gerei o setup, inclusive pelo clickonce, e funciona os dois.

    No note do meu colega, com Win XP, ele instala, reinicia por causa do .net framework e quando clica no icone, dá uma mensagem falando que a aplicação encontrou um erro e pede desculpas pelo inconveniente, mas não diz o erro. Difícil assim, não é?!


    Tecnólogo em Análise e Desenvolvimento de Sistemas http://letrasdemusicas.webng.com
    sexta-feira, 15 de julho de 2011 20:03
  • Jeferson,

    Tente colocar um código para tratar as exceções na aplicação.

    No seu program.cs, coloque o seguinte código na primeira linha do Main():

    Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException);
    
    static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e)
    {
     MessageBox.Show(e.Exception.Message);
    }
    

    Dessa forma você conseguirá pegar o erro que possa estar acontecendo.

    at.,


    Rogério de Resende Ohashi | Ohashi.NET (.NET, Security, C#, WinForms, WCF, Workflow, Azure, Windows Phone, Mono)
    sexta-feira, 15 de julho de 2011 20:18
  • Rogério, coloquei mas não deu mensagem nenhuma. Estranho, não está nem chegando na inicialização...


    Tecnólogo em Análise e Desenvolvimento de Sistemas http://letrasdemusicas.webng.com
    sexta-feira, 15 de julho de 2011 20:38
  • Então provavelmente está faltando alguma DLL ou a .NET Framework não foi instalada corretamente ou o Windows XP está desatualizado.

    Verifique se o ultimo service pack do XP e a versão da .NET Framework que você usa estão instalados corretamente.

    Outra coisa...

    Tente criar uma aplicação vazia somente com um form e executa-la nesta máquina para ver se irá funcionar.

    at.,


    Rogério de Resende Ohashi | Ohashi.NET (.NET, Security, C#, WinForms, WCF, Workflow, Azure, Windows Phone, Mono)
    sexta-feira, 15 de julho de 2011 20:45
  • O usuário tem Win XP SP 3 e o cliente do .net framework 4.
    Tecnólogo em Análise e Desenvolvimento de Sistemas http://letrasdemusicas.webng.com
    segunda-feira, 18 de julho de 2011 17:07
  • Jeferson,

    Normalmente essa mensagem de que encontrou erros e pede desculpas pelo inconveniente acontece quando você compila o seu sistema em um computador x64 utilizando a opção "Any CPU" e instala o mesmo em um computador x86... Será que não foi isso que aconteceu com você? Se sim, compile o seu sistema utilizando a opção x86 e tudo vai funcionar normalmente...


    André Alves de Lima
    Microsoft MVP - Client App Dev
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    terça-feira, 19 de julho de 2011 00:12
    Moderador
  • André, o Configuration Manager está ajustado para x86.

    Agora tem um detalhe: fiz um teste criando uma aplicação com um form apenas e vazio. Funcionou.

    Depois disso, adicionei vários componentes: também funcionou.

    Na terceira compilação, adicionei referências do Word e Excel. Tudo ok.

    Depois adicionei referência ao Lotus Notes, também funcionou.

    Por último, adicionei o using System.Data.SqlClient, adicionei o código abaixo para teste e rodar no cliente deu esse erro: "Object reference not set to an instance of an object" e pediu para verificar no final da mensagem como se faz para chamar o JIT ao invés dessaa janela.

        public SqlDataReader Desligamento()
        {
          SqlDataReader dr = null;
          try
          {
            strSql = "";
            return dr;
          }
          catch (Exception)
          {
            return null;
          }
        }
    


    Tecnólogo em Análise e Desenvolvimento de Sistemas
    http://letrasdemusicas.webng.com
    terça-feira, 19 de julho de 2011 12:17
  • Bom galera, depois de vários dias e vários testes, descobri a falha.

    É uma coisa bem besta, mas eu sinceramente não sabia que isto ocorreria, então vou deixar a solução aqui porque acho que pode ajudar alguém no futuro.

    O ícone principal da minha aplicação tem as medidas de 256x256 e o Windows XP não suporta essa qualidade de imagem para os ícones. Como estou desenvolvendo sobre o Win 7 não dava erro aqui, só na máquina cliente. Foi só tirar um único ícone e todo o sistema funcionou perfeitamente.

    É galera, é isso aí, vivendo e aprendendo!!!


    Tecnólogo em Análise e Desenvolvimento de Sistemas
    http://letrasdemusicas.webng.com
    • Sugerido como Resposta [J]unior quarta-feira, 20 de julho de 2011 19:01
    • Marcado como Resposta AndreAlvesLimaModerator quarta-feira, 20 de julho de 2011 19:07
    quarta-feira, 20 de julho de 2011 18:43