none
Erro em Aplicação C# com Sqlite RRS feed

  • Pergunta

  • Boa noite Pessoal,

    Desenvolvi uma aplicação wndows Forms C# e utilizei o sqlite como banco, em ambiente de projeto no vs2013 ela roda normalmente e acessa a base de dados, faz inclusões e consultas, mas ao gerar um Setup para distribuir a aplicação não consegue acessar o Banco ao rodar o .exe fora do VS2013. 

    Os passos que eu faço são:

    1- crio um projeto de setup e adiciono o banco no projeto;

    2- Na string de conexão configuro exatamente para o local que vai ficar o executavel e o banco:  

           private string StrConexao = @"Data Source=C:\Program Files\AppBovinos\Instalador\CriacaoBovinos.db";

    3 - No Instalador configuro para o Executável ser instalador em:

          C:\Program Files\AppBovinos\Instalador\

    Mas ao executar a aplicação dá erro ao acessar o banco.

    Será que é permissão na pasta onde fica o banco ou falta incluir mais alguma coisa.

    Desde já agradeço.

    domingo, 14 de fevereiro de 2021 00:25

Respostas

  • Boa noite Pessoal,

    Consegui resolver com a seguinte solução: 

    1 - Capturei o erro especifico que ocorria(falta da biblioteca sqlite.Interop.dll) 

    2 - Adicionei a library no projeto de Setup e ao instalar a aplicação ela fica na mesma pasta do banco, funcionou agora.

    Obrigado pela ajuda.

    • Marcado como Resposta Augusto_Pvh terça-feira, 16 de fevereiro de 2021 02:52
    terça-feira, 16 de fevereiro de 2021 02:51

Todas as Respostas

  • domingo, 14 de fevereiro de 2021 03:21
  • Coloca o erro aqui, é mais fácil.

    Mas de qualquer forma, o interessante é que o caminho do banco de dados esteja em um local configurável como o app.config. Ou quando esse arquivo esteja no mesmo diretório da aplicação você use a classe CurrentDomain.

    System.AppDomain.CurrentDomain.BaseDirectory + @"\nomedoseubanco.db"


    Natan

    segunda-feira, 15 de fevereiro de 2021 11:54
  • Boa noite Pessoal,

    Consegui resolver com a seguinte solução: 

    1 - Capturei o erro especifico que ocorria(falta da biblioteca sqlite.Interop.dll) 

    2 - Adicionei a library no projeto de Setup e ao instalar a aplicação ela fica na mesma pasta do banco, funcionou agora.

    Obrigado pela ajuda.

    • Marcado como Resposta Augusto_Pvh terça-feira, 16 de fevereiro de 2021 02:52
    terça-feira, 16 de fevereiro de 2021 02:51