Olá Pessoal, estou criando mais um tópico com intuito de mostrar para vocês como utilizar ACBrLib no C#.
Realizando download do ACBrLib.
Primeiramente vamos fazer o da versão mais atualizada do ACBrLib.. Use os Links abaixo:
DOWNLOAD da versão DEMO
DOWNLOAD da versão PRO
Após realizar o download do ACBrLib que deseja utilizar, será necessário descompactar o arquivo, assim que descompactar teremos uma estrutura de pasta exatamente assim.
Ao acessar a pasta bin, temos algumas pastas como Cdecl, StdCall, Linux e MT, a pasta MT é onde esta ACBrLib com suporte para multithread.
Para entender sobre a convenção de chamada Cdecl ou StdCall veja a sessão Cdecl ou StdCall qual usar, no Manual ACBrLib.
Para entender as diferenças entre as bibliotecas multithread e singlethread veja o tópico a seguir:
Copiando as bibliotecas para a pasta da Aplicação.
Vou utilizar a ACBrLib com suporte a singlethread, mas para multithread os passos são os mesmos.
Então vamos acessar a pasta bin, e depois Cdecl ou StdCall conforme a convenção a ser utilizada.
Copiar ACBrLib x86, caso sua aplicação for compilada em x86 ou copie ACBrLib x64 caso sua aplicação for compilada em x64.
Acessando a pasta onde esta o .exe da aplicação, vamos criar uma pasta chamada ACBrLib.
Dentro desta pasta vamos criar mais uma pasta com o nome de x86 ou x64, vai depender de qual versão do ACBrLib você vai utilizar, como eu compilei aplicação em x86, vou criar pasta com nome de x86 e colar ACBrLib para dentro da pasta.
Deve ficar desta forma.
Bibliotecas com outras dependências - OpenSSL e LibXml2.
Dentro da pasta dep temos duas dependências OpenSSL e LibXml2.
- ACBrLibMail precisa da dependência OpenSSL.
- ACBrLibSAT, ACBrLibCTe, ACBrLibGNRe, ACBrLibMDFe e ACBrLibNFe precisam das dependências OpenSSL e LibXml2.
Copie a versão das dependências que correspondem a versão da ACBrLib que você vai utilizar, dependências x86 para ACBrLib x86 ou dependências x64 para ACBrLib x64.
Bibliotecas com outras dependências - Pasta Schemas e ACBrServicos.ini
Caso esteja usando ACBrLibCTe, ACBrLibGNRe, ACBrLibMDFe, ACBrLibNFe na pasta dep, temos uma pasta chamada Schemas.
Devemos informar o caminho desta pasta Schemas em PathSchemas no .ini de configuração do ACBrLib.
Abaixo um exemplo utilizando ACBrLibNFe.
Mantenha o ACBrNFeServicos.ini junto a pasta Schemas.
Deve ficar desta forma a pasta com as dependências:
Estou utilizando Demo SAT em C# que esta disponível no SVN do Projeto ACBr.
Gerenciador de Configurações
Antes de executar demo ou sua aplicação verifique se no Gerenciador de Configurações esta configurado corretamente a versão correspondente do ACBrLib.
Caso for utilizar ACBrLib x86 use as configurações em x86 e ACBrLib x64 as configurações x64.
Depois de realizar todos os passos acima, agora vou abrir o demo e executar
Observação:
Quando for realizar download dos exemplos do Projeto ACBr, não se esqueça da pasta Shared.. ela é muito importante pois existem dependências para os exemplos.
Faça download dos Demos aqui:
https://projetoacbr.com.br/fontes/