Ir para conteúdo
  • Cadastre-se

dev botao

Caminho acbrlib online


Gustavo M
Ver Solução Respondido por Daniel Simoes,
  • Este tópico foi criado há 1130 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Dll acbrboleto64.dll está em cdecl

Para publicar o projeto, preciso antes alterar o caminho ?  Fiz nesse formato abaixo para alterar caminho do acbrboleto64.dll mas ainda não funcionou.

No acbrlibhande.cs

static ACBrLibHandle()
        {
            MinusOne = new IntPtr(-1);           
            var path = System.Web.HttpContext.Current.Server.MapPath("~/bin/ACBrLib/x64/");
            Environment.SetEnvironmentVariable("PATH", path);
        }

Na pasta do projeto Mvc que criei, fui em adicionar referencia >  Projetos > e adicionei as dll ACBrLib.Boleto.dll e ACBrLib.Core.dll .

Minha aplicação no Windows Server 2016 está em " C:/TesteBoleto "  

Vi que a mensagem mostra o caminho d:/c#/boleto/Imports/AcbrLib.Core .... O erro está sendo no caminho ? pois esta buscando no d: , no servidor ? Como altera esse caminho ?

erro online.png

Link para o comentário
Compartilhar em outros sites

  • Fundadores

Você está usando Linux ou Windows ??
DLL é apenas para o Wndows.. mas você está usando um Path com a sintaxe de Linux...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

1 hora atrás, Daniel Simoes disse:

Você está usando Linux ou Windows ??
DLL é apenas para o Wndows.. mas você está usando um Path com a sintaxe de Linux...

Obrigado pelo retorno, uso windows server 2016.

var path = System.Web.HttpContext.Current.Server.MapPath("~/bin/ACBrLib/x64/");       

path Linux ? Preciso alterar Environment.SetEnvironmentVariable("PATH", path) ?

eu utilizei tudo igual está na demo. Na minha maquina local funciona normal. Ja gera os boletos. Somente no server online que da esse erro.

Editado por Gustavo M
Link para o comentário
Compartilhar em outros sites

  • Fundadores

Vamos por partes... Você está rodando um API, correto ? em qual servidor Web ela roda ? Essa máquina é Windows ou Linux ?

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

Abrir a demo acbrlib boleto em c# realizei testes e funcionou.

Depois criei um novo projeto dentro da demo mesmo, o projeto é .net mvc.

Nesse projeto inclui fui em adicionar referencia >  Projetos > e adicionei as dll ACBrLib.Boleto.dll e ACBrLib.Core.dll .

Criei BoletoController:

public ActionResult Index()
        {

boleto = new ACBrBoleto();                               
            
            var config = boleto.ConfigurarDados(Server.MapPath("~/Arquivos/ImobBoleto.ini"));           
            var ret = boleto.IncluirTitulos(titulo);

            boleto.GerarPDF();
 }

Testei e na minha maquina local funcionou tanto no windows 10 e no windows 7.

Depois fui em publicar e salvei os arquivos publicados em uma pasta.

Servidor: 

No windows server 2016 > criei um website e envie esses arquivos publicados.

E quando abro a mesma url da esse erro:

4 horas atrás, Gustavo M disse:

erro online.png

 

Depois fui em ACBrLibHandle.cs para testar ver se tinha a ver com esse caminho e fiz essa alteração nessa função

 static ACBrLibHandle() 

var path = System.Web.HttpContext.Current.Server.MapPath("~/bin/ACBrLib/x64/");        //alterei esse path

mas não funcionou.

Link para o comentário
Compartilhar em outros sites

  • Fundadores
33 minutos atrás, Gustavo M disse:

~/bin/ACBrLib/x64/

Isso não parece ser um Path válido para Windows...

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

Coloquei todas as pastas la e também redireicionar o path do iis pra a pasta dos arquivos, mas não abre. 

dll 64 coloquei tambem na pasta system32 e nada.

Quando estou publicando, estou indo direto no projeto mvc, sera que não está buscando path das class library que são acbrboleto.cs e acbrlibhande.cs ?

mas ja até coloquei essas class library nas pastas onde supostamente estava dando erro igual no print, mas não abre. 

Alguma outra sugestão ? Tem algum tutorial do acbr pra web ?

Link para o comentário
Compartilhar em outros sites

  • Fundadores
  • Solution

Quem carrega uma Lib (DLL), sempre será o sistema operacional... o seu programa apenas solicita para ela ser carregada...

Pode ser que uma Lib, tenha dependência de várias outras Libs... Exemplo.. as Libs do ACBr tem várias dependências, que estão na pasta "DEP" do arquivo ZIP.

Várias DLLs são compiladas em Visual C++.. o que causa a dependência do RunTime... você pode baixar todas as verões do MS Visual C++ RunTime, nessa página:

https://github.com/abbodi1406/vcredist/releases

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...