Ir para conteúdo
  • Cadastre-se

dev botao

ACBrLib no linux com C++ cpp


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

Recommended Posts

Postado

olá, eu vi exemplos em C# no windows, java, etc

estou tentando acessar a ACBrLib no linux usando C++

consegui compilar o arquivo libacbrnfe64.so no ubuntu 18 com lazarus, tudo tranquilo

image.png.49d365850dfbe4ed493e0dc220edc0a2.png

o arquivo tem 15 mb, eu tentei me basear pelo c# mas não consegui avanço nenhum em C++

gostaria de conseguir executar pelo menos uma função basica tipo a NFE_Versao, só pra ver se está realmente conectando com a Dinamic Shared Library

mas não sei nem por onde começar...

ví exemplos simples na internet como este aqui, (eu mesmo criando um file.so meu de exemplo), executa e funciona normal:

image.png.c026bea3a974f9c465e2b466b3122f85.png

mas vocês teriam algum exemplo simples de acesso da lib do acbr em c++ pra linux mais ou menos nesse sentido?

desde já agradeço e parabenizo pelo incrivel trabalho ;-)

  • Curtir 1
  • Administradores
Postado

Bom dia.

@Rafael Dias poderia dar uma dicas ao colega?

Att.

  • Curtir 2
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Fundadores
Postado

A ACBrLib é uma Biblioteca compartilhada como qualquer outra... ou seja... carregue ela, da mesma maneira que você carreguaria qualquer outra Biblioteca e C++

O fato de ser Linux não mudará muita coisa...

Creio que você conheça Linux e saiba onde copiar o arquivo .SO e quais permissões dar a ele... correto?

Se você não tem tanta experiência em Linux.. sugiro tentar primeiro no Windows... e depois  usar o mesmo código no Linux 

  • Curtir 4
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.

Postado (editado)

no windows tentei com C# mas não está dando muito certo também,

no exemplo do C# está dando erro ao executar porque fala que nao acha uma dll (ACBrLib.Core.dll) sendo que a dll está lá

dai nao sei se essa ACBrLib.Core.dll é obrigatoria ou se foi criada só no exemplo do C# mesmo, e empacou o processo.

image.png.4cb68bd0ab9463a1c27a13fc3be66ec6.png

mas a dll está presente na pasta, só achei estranho o tamanho dela, muito pequena

image.png.7379b3699648a3c3764516a046e7b5db.png

(se tiver alguma informação que ajude nisso aqui tbm agradeço, ia criar outro post pra esse)


dai tentei ir de linux mesmo mas não achei exemplos basicos de como acessar as funções internas.

fiz bibliotecas .so de exemplo aqui, até concegui acessar, mas a do acbr ele nao executa a função, não sei se tem que colocar argumentos obrigatorios que nao estou colocando talvez.

na verdade estou bem perdido. pensei de ver com vc's se tinham exemplos em c++ disponiveis, ou talvez algum stackoverflow que recomendassem pra eu comessar os estudos disso.

desde ja agradeço a atenção.

Editado por billbarsch
Postado

O erro no C# não tem nada haver com a ACBrLib.Core.dll , pela sua imagem fica claro que ele não esta achando a dll nativa e que o erro foi lançado na ACBrLib.Core.dll .

Infelizmente não temos exemplo em C++, para corrigir o erro no C# copie a dll nativa e suas dependências para o diretório do executável, lembrando que o c# usa dll Cdecl e o programa executa de acordo como o sistema operacional, ou seja se o sistema operacional for x64 o programa executa em x64 e vice versa;

  • Curtir 2

 

  • Solution
Postado

funcionou no c#!!! só pra ficar registrado

depois que copiei essas dll aqui pra pasta nativa, o aplicativo executou!!!!

image.png.651be4ce045c9a33f734029a44db4219.png

vou continuar estudando o C++ qualquer novidade posto aqui

muito obrigado!!

  • Curtir 2
  • Este tópico foi criado há 1872 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.