ACBrLib
Moderador: Moderadores
- rubens
- Colaborador

- Mensagens: 1520
- Registrado em: 16 Ago 2003 09:05
- Localização: Nova Xavantina - MT
ACBrLib
Bom dia...
No anexo que baixei aqui não tem prg não...
Os teste que fiz no executável aqui... só imprime um independente da ordem... quando vai imprimir o outro dá pau... att..
Rubens
No anexo que baixei aqui não tem prg não...
Os teste que fiz no executável aqui... só imprime um independente da ordem... quando vai imprimir o outro dá pau... att..
Rubens
"Eu e minha casa servimos ao Senhor e você
"
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
ACBrLib
Agora faça outro teste.
Salve quantos XML quiser em uma pasta, e nessa pasta chame o test.exe, e acione a primeira opção, de gerar danfe.
Salve quantos XML quiser em uma pasta, e nessa pasta chame o test.exe, e acione a primeira opção, de gerar danfe.
Código: Selecionar todos
FUNCTION TestDanfe()
LOCAL oDanfe, oFile, oFileList, cFilePdf
oFileList := Directory( "*.xml" )
FOR EACH oFile IN oFileList
oDanfe := hbNfeDaGeral():New()
cFilePdf := Substr( oFile[ F_NAME ], 1, At( ".", oFile[ F_NAME ] ) ) + "pdf"
fErase( cFilePdf )
//oDanfe:cLogoFile := JPEGImage()
oDanfe:cDesenvolvedor := "www.josequintas.com.br"
oDanfe:ToPDF( oFile[ F_NAME ], cFilePdf )
? oFile[ F_NAME ], oDanfe:cRetorno
PDFOpen( cFilePdf )
NEXT
RETURN NIL
FUNCTION PDFOpen( cFile )
IF File( cFile )
WAPI_ShellExecute( NIL, "open", cFile, "",, WIN_SW_SHOWNORMAL )
Inkey(1)
ENDIF
RETURN NIL
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
- rubens
- Colaborador

- Mensagens: 1520
- Registrado em: 16 Ago 2003 09:05
- Localização: Nova Xavantina - MT
ACBrLib
Bom dia...
Quintas...
Usei muito a sua solução.. e foi muito satisfatória e sou muito grato a você.
Não querendo cuspir no prato que comi... mas fica muito dependente de você...
Qualquer alteração que precisa a gente precisa mudar os fontes... e daí não consegue acompanhar as suas atualizações..
Daí o interesse pelo ACBRLIB ou ACBRDLL.. Já estou usando para impressão e colocarei para emitir nfce. Então quanto mais gente aderir e pudermos ajudar uns aos outros menos bugs aparecerão nos clientes..
Houve mudança em algo, tipo layout etc o time do acbr faz as mudanças e a gente só baixa a DLL de novo..
E isso vale para toda a parte fiscal.. .
Att..
Rubens
Quintas...
Usei muito a sua solução.. e foi muito satisfatória e sou muito grato a você.
Não querendo cuspir no prato que comi... mas fica muito dependente de você...
Qualquer alteração que precisa a gente precisa mudar os fontes... e daí não consegue acompanhar as suas atualizações..
Daí o interesse pelo ACBRLIB ou ACBRDLL.. Já estou usando para impressão e colocarei para emitir nfce. Então quanto mais gente aderir e pudermos ajudar uns aos outros menos bugs aparecerão nos clientes..
Houve mudança em algo, tipo layout etc o time do acbr faz as mudanças e a gente só baixa a DLL de novo..
E isso vale para toda a parte fiscal.. .
Att..
Rubens
"Eu e minha casa servimos ao Senhor e você
"
- oribeiro
- Usuário Nível 1

- Mensagens: 30
- Registrado em: 15 Fev 2013 07:35
- Localização: Itu/SP
- Contato:
ACBrLib
Rubens,
Bom dia. Me ajuda a resolver esse erro. Não consigo imprimir NFe e SAT no mesmo programa, sem ter que sair dele antes. É ruim heim! Risos
Segue o programa:
Bom dia. Me ajuda a resolver esse erro. Não consigo imprimir NFe e SAT no mesmo programa, sem ter que sair dele antes. É ruim heim! Risos
Segue o programa:
Código: Selecionar todos
#include 'FIVEWIN.CH'
#define DLL_CDECL 0x08
#define DLL_STDCALL 0x20
#define DLL_SYSTEM 0x04
#define STR_LEN 256
function Main()
local oWnd
define window oWnd from 5,5 to 30,85 title "ACBrLib Teste"
@ 3,10 BUTTON "Imprime NF-e" size 100,50 OF oWnd ACTION ImprimirNFE()
@ 3,40 BUTTON "Imprime SAT" size 100,50 OF oWnd ACTION ImprimirSAT()
set message of oWnd to "Teste ACBrLib" date time noinset
activate window oWnd centered
return nil
static function ImprimirNFE(eArquivoOuXml, cImpressora, nNumCopias, cProtocolo, bMostrarPreview, cMarcaDagua, bViaConsumidor, bSimplificado)
local hResult, bufferLen, buffer, oErr
local oDll := DllLoad( 'ACBrNFe32.dll' )
eArquivoOuXml := if(eArquivoOuXml=nil, "acbrnfe.xml", eArquivoOuXml)
cImpressora := if(cImpressora=nil, "", cImpressora)
nNumCopias := if(nNumCopias=nil, 1, nNumCopias)
cProtocolo := if(cProtocolo=nil, "", cProtocolo)
bMostrarPreview := if(bMostrarPreview=nil, "True", bMostrarPreview)
cMarcaDagua := if(cMarcaDagua=nil, "", cMarcaDagua)
bViaConsumidor := if(bViaConsumidor=nil, "", bViaConsumidor)
bSimplificado := if(bSimplificado=nil, "", bSimplificado)
hResult := DllCall(oDll, DLL_CDECL, "NFE_Inicializar", hb_StrToUTF8("ACBrLib.Ini"), hb_StrToUTF8(""))
hResult := DllCall(oDll, DLL_CDECL, "NFE_CarregarXML", hb_StrToUTF8(eArquivoOuXml))
hResult := DllCall(oDll, DLL_CDECL, "NFE_Imprimir", hb_StrToUTF8(cImpressora), nNumCopias, hb_StrToUTF8(cProtocolo), hb_StrToUTF8(bMostrarPreview), hb_StrToUTF8(cMarcaDagua), hb_StrToUTF8(bViaConsumidor), hb_StrToUTF8(bSimplificado))
if !Empty(hResult)
bufferLen := STR_LEN
buffer := Space(bufferLen)
oErr := DllCall(oDll, DLL_CDECL, "NFE_UltimoRetorno", @buffer, @bufferLen)
MsgStop(buffer, "Erro: "+Str(hResult))
endif
DllCall(oDll, DLL_CDECL, "NFE_Finalizar")
DllUnload(oDll)
return nil
static function ImprimirSAT(eArquivoOuXml, cImpressora)
local hResult, bufferLen, buffer, oErr
local oDll := DllLoad( 'ACBrSat32.dll' )
eArquivoOuXml := if(eArquivoOuXml=nil, "acbrsat.xml", eArquivoOuXml)
cImpressora := if(cImpressora=nil, "", cImpressora)
hResult := DllCall(oDll, DLL_CDECL, "SAT_Inicializar", hb_StrToUTF8("ACBrLib.Ini"), hb_StrToUTF8(""))
hResult := DllCall(oDll, DLL_CDECL, "SAT_ImprimirExtratoVenda", hb_StrToUTF8(eArquivoOuXml), hb_StrToUTF8(cImpressora))
if !Empty(hResult)
bufferLen := STR_LEN
buffer := Space(bufferLen)
oErr := DllCall(oDll, DLL_CDECL, "SAT_UltimoRetorno", @buffer, @bufferLen)
MsgStop(buffer, "Erro: "+Str(hResult))
endif
DllCall(oDll, DLL_CDECL, "SAT_Finalizar")
DllUnload(oDll)
return nil
Oscar Ribeiro
xHarbour+Fwh+WorkShop
xHarbour+Fwh+WorkShop
- rubens
- Colaborador

- Mensagens: 1520
- Registrado em: 16 Ago 2003 09:05
- Localização: Nova Xavantina - MT
ACBrLib
Boa tarde...
Pelo que vi de diferente aí do que eu uso.... é só a liberação da DLL...
Tenta depois do dllunload aí colocar
oDll := NIL
Não consigo compilar seu exemplo agora... mas a noite vou compilar (com harbour sem lib) e te falo o resultado...
Att..
Rubens
Pelo que vi de diferente aí do que eu uso.... é só a liberação da DLL...
Tenta depois do dllunload aí colocar
oDll := NIL
Não consigo compilar seu exemplo agora... mas a noite vou compilar (com harbour sem lib) e te falo o resultado...
Att..
Rubens
"Eu e minha casa servimos ao Senhor e você
"
- oribeiro
- Usuário Nível 1

- Mensagens: 30
- Registrado em: 15 Fev 2013 07:35
- Localização: Itu/SP
- Contato:
ACBrLib
Obrigado Rubens, pela sua disposição em ajudar.
Não havia colocado oDll:=Nil antes porque a variável está definida como local em cada função.
Mesmo assim, eu coloquei agora, compilei e infelizmente o problema persiste.
Só dá para imprimir o outro documento se sair do programa e entrar novamente. Parece que algo está ficando na memória depois da impressão.
Aguardo a sua compilação a noite para ver se descobre algo que possa ser feito.
Não havia colocado oDll:=Nil antes porque a variável está definida como local em cada função.
Mesmo assim, eu coloquei agora, compilei e infelizmente o problema persiste.
Só dá para imprimir o outro documento se sair do programa e entrar novamente. Parece que algo está ficando na memória depois da impressão.
Aguardo a sua compilação a noite para ver se descobre algo que possa ser feito.
Oscar Ribeiro
xHarbour+Fwh+WorkShop
xHarbour+Fwh+WorkShop
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
ACBrLib
Vai no chute....
Tente uma coisa: usar variáveis diferentes das usadas nas chamadas.
Algumas podem ser passadas como pointer, como referência com a variável da DLL.
De repente, alguma dessas variáveis podem estar prendendo a DLL.
Ou outra tentativa:
Uma vez carregada a DLL, não descarregue a não ser no final do programa.
Se o problema está em carregar/descarregar, estaria sendo eliminado isso.
Tente uma coisa: usar variáveis diferentes das usadas nas chamadas.
Algumas podem ser passadas como pointer, como referência com a variável da DLL.
De repente, alguma dessas variáveis podem estar prendendo a DLL.
Ou outra tentativa:
Uma vez carregada a DLL, não descarregue a não ser no final do programa.
Se o problema está em carregar/descarregar, estaria sendo eliminado isso.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
ACBrLib
Minha sugestão é que olhe com atenção o arquivo INI, ali é que realmente importa no caso do ACBr LIB, pois ele configura o comportamento da DLL.
Link com as informações possíveis no INI : https://acbr.sourceforge.io/ACBrLib/Con ... eca17.html
Muitas vezes, a falta de informar no INI que era para salvar um arquivo pode ocasionar erros incompreensíveis no ACBr ( o Quintas vai comentar sobre isso...rss ), já passei por isso, tanto com o ACBr LIB como programando em Delphi com ACBr.
Link com as informações possíveis no INI : https://acbr.sourceforge.io/ACBrLib/Con ... eca17.html
Muitas vezes, a falta de informar no INI que era para salvar um arquivo pode ocasionar erros incompreensíveis no ACBr ( o Quintas vai comentar sobre isso...rss ), já passei por isso, tanto com o ACBr LIB como programando em Delphi com ACBr.
Marcelo Neves
https://produto.mercadolivre.com.br/MLB ... 0067609615
whatsapp (41) 99786-3995
http://harbourdeveloper.blogspot.com
marcelo.souza.das.neves@gmail.com
https://produto.mercadolivre.com.br/MLB ... 0067609615
whatsapp (41) 99786-3995
http://harbourdeveloper.blogspot.com
marcelo.souza.das.neves@gmail.com
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
ACBrLib
Olá!
Infelizmente(no caso de testes) ele usar xHarbour com Fivewin.
Acredito que aqui usamos Harbour com Minigui, Hwgui.
Dificulta fazermos testes. Um exemplo CRU(sem lib visual) seria mais fácil para todos testarem.
Saudações,
Itamar M. Lins Jr.
Infelizmente(no caso de testes) ele usar xHarbour com Fivewin.
Acredito que aqui usamos Harbour com Minigui, Hwgui.
Dificulta fazermos testes. Um exemplo CRU(sem lib visual) seria mais fácil para todos testarem.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
ACBrLib
Olá!
A SEFAZCLASS não tem essas mudanças. Apenas correções simples e possíveis atualizações ditadas pelo governo.
Para nós que usamos xBase o projeto do Quintas é bem melhor, pq quanto mais programadores xBase usarem, melhor será(ia). Ainda mais que as correções e adições no código é de fácil entendimento para qualquer programador xBase e usando ACBr é exatamente o contrário. Usando ACBr, estamos dependentes dos programadores de outra linguagem que não é a nossa padrão.
Infelizmente se não cobrar e ter uma equipe com marketing etc... não é valorizado. (Santo de casa não faz milagres.)
Se tivesse BUGs no projeto ou o projeto deixasse a desejar, tudo bem, mais é exatamente o contrário, é bem documentado, os fontes são de fácil entendimento, qualquer pessoa pode fazer forks e mandar paths.
Quando comecei com NFe não tinha o SEFAZCLASS, infelizmente. Mas vejo que é muito mais leve que a ACBRLIB.
Lembrando que pode ser criada a SEFAZCLASS LIB/DLL. Que seria muito mais simples para nós.
Lembrando: Aqui nesse senário não tem segredos, usamos o que MANDA a legislação, toda correção e adição partem do governo, não é exclusividade do pessoal do ACBr.
Agora, podemos nos sentir mais seguros e cômodos usando ACBr, porque estamos pagando.
Saudações,
Itamar M. Lins Jr.
Não vejo dessa forma.Não querendo cuspir no prato que comi... mas fica muito dependente de você...
Qualquer alteração que precisa a gente precisa mudar os fontes... e daí não consegue acompanhar as suas atualizações..
Daí o interesse pelo ACBRLIB ou ACBRDLL.. Já estou usando para impressão e colocarei para emitir nfce. Então quanto mais gente aderir e pudermos ajudar uns aos outros menos bugs aparecerão nos clientes..
Este pensamento se aplica para o ACBr. Quem está acompanho o "calhamaço" de atualizações que sofre quase diariamente o ACBr ?e daí não consegue acompanhar as suas atualizações..
A SEFAZCLASS não tem essas mudanças. Apenas correções simples e possíveis atualizações ditadas pelo governo.
Para nós que usamos xBase o projeto do Quintas é bem melhor, pq quanto mais programadores xBase usarem, melhor será(ia). Ainda mais que as correções e adições no código é de fácil entendimento para qualquer programador xBase e usando ACBr é exatamente o contrário. Usando ACBr, estamos dependentes dos programadores de outra linguagem que não é a nossa padrão.
Infelizmente se não cobrar e ter uma equipe com marketing etc... não é valorizado. (Santo de casa não faz milagres.)
Se tivesse BUGs no projeto ou o projeto deixasse a desejar, tudo bem, mais é exatamente o contrário, é bem documentado, os fontes são de fácil entendimento, qualquer pessoa pode fazer forks e mandar paths.
Quando comecei com NFe não tinha o SEFAZCLASS, infelizmente. Mas vejo que é muito mais leve que a ACBRLIB.
Lembrando que pode ser criada a SEFAZCLASS LIB/DLL. Que seria muito mais simples para nós.
Lembrando: Aqui nesse senário não tem segredos, usamos o que MANDA a legislação, toda correção e adição partem do governo, não é exclusividade do pessoal do ACBr.
Agora, podemos nos sentir mais seguros e cômodos usando ACBr, porque estamos pagando.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
ACBrLib
Itamar chegou dando uma voadora e um mata-leão....e tem razão dessa vez !
Eu estudei e fiz muitos e muitos testes para conseguir usar a DLL do Projeto ACBr e emitir NFC-e para o sistema de restaurante que vendo no Mercado Livre.
Ficou uma beleza, é muito rápido o processo de enviar o XML e receber a resposta, não tenho do que me queixar...mas....
1 - Eu tive que fazer um cadastro no site do ACBr com meu CNPJ para ter 15 dias de acesso grátis aos arquivos que são obtidos de forma paga, por isso consegui ter acesso à DLL e fazer os testes necessários para poder ter o sistema OK, após esse período vc não tem mais acesso e pode escolher entre os planos mensais, de 3 meses, de 6 meses ou de 1 ano, sendo que caso queira pagar o valor do plano mensal e ter acesso total por 30 dias corridos ao site e baixar o que precisar nesse período, e depois não pagar mais e só voltar dali a uns 4 meses e pagar novamente o valor mensal, pode ser feito.
No sistema de restaurante anteriormente eu usava a Sefazclass do Quintas para enviar e receber o retorno da Sefaz, no caso da emissão de NFC-e, e a diferença é somente em velocidade, mais nada, o XML é todo criado usando o que o Quintas disponibilizou, então, no fringir do "ovos", o que eu vi nos meus testes ? A Sefazclass usa CAPICOM que só roda no Windows para fazer a comunicação com a Sefaz, e outra DLL para assinar o XML, o ACBr não usa CAPICOM, utiliza outras DLL que funcionam tanto em Windows como Linux, e que são mais rápidas que a CAPICOM, fora isso, no ACBr vc precisa ter a pasta Schemas para que ele valide o XML que vc fez contra as "matrizes" para ver se tudo está ok, mas esse serviço é totalmente dispensável se vc como programador fizer o que está escrito no site da Sefazclass, que é ler a documentação oficial do governo e entender de uma vez por todas como deve dispor as informações dentro do XML, pq criar o XML é a coisa mais fácil do mundo, o problema todo é entender o que e como colocar dentro do XML.
RESUMINDO - eu já programei com ACBr no Delphi para NF-e e NFC-e, e vendo o projeto ACBr LIB que usa DLL, ficou claro que o que falta para a Sefazclass decolar é só trocar o CAPICOM por outra DLL (a usada pelo ACBr).
Tanto o ACBr como os componentes da Tecnospeed por exemplo, não criam o XML pra vc, eles só cuidam de enviar e dar retorno do que foi enviado, a parte mais dificil de todo o processo é entender as regras fiscais para montar o XML, e não enviar ele para a Receita !!!!
De minha parte, quero ver se ainda este ano consigo dar inicio nos testes com Sefazclass+SSL, e claro, tendo sucesso vou passar pro Quintas disponibilizar no Git da Sefazclass.
Eu estudei e fiz muitos e muitos testes para conseguir usar a DLL do Projeto ACBr e emitir NFC-e para o sistema de restaurante que vendo no Mercado Livre.
Ficou uma beleza, é muito rápido o processo de enviar o XML e receber a resposta, não tenho do que me queixar...mas....
1 - Eu tive que fazer um cadastro no site do ACBr com meu CNPJ para ter 15 dias de acesso grátis aos arquivos que são obtidos de forma paga, por isso consegui ter acesso à DLL e fazer os testes necessários para poder ter o sistema OK, após esse período vc não tem mais acesso e pode escolher entre os planos mensais, de 3 meses, de 6 meses ou de 1 ano, sendo que caso queira pagar o valor do plano mensal e ter acesso total por 30 dias corridos ao site e baixar o que precisar nesse período, e depois não pagar mais e só voltar dali a uns 4 meses e pagar novamente o valor mensal, pode ser feito.
No sistema de restaurante anteriormente eu usava a Sefazclass do Quintas para enviar e receber o retorno da Sefaz, no caso da emissão de NFC-e, e a diferença é somente em velocidade, mais nada, o XML é todo criado usando o que o Quintas disponibilizou, então, no fringir do "ovos", o que eu vi nos meus testes ? A Sefazclass usa CAPICOM que só roda no Windows para fazer a comunicação com a Sefaz, e outra DLL para assinar o XML, o ACBr não usa CAPICOM, utiliza outras DLL que funcionam tanto em Windows como Linux, e que são mais rápidas que a CAPICOM, fora isso, no ACBr vc precisa ter a pasta Schemas para que ele valide o XML que vc fez contra as "matrizes" para ver se tudo está ok, mas esse serviço é totalmente dispensável se vc como programador fizer o que está escrito no site da Sefazclass, que é ler a documentação oficial do governo e entender de uma vez por todas como deve dispor as informações dentro do XML, pq criar o XML é a coisa mais fácil do mundo, o problema todo é entender o que e como colocar dentro do XML.
RESUMINDO - eu já programei com ACBr no Delphi para NF-e e NFC-e, e vendo o projeto ACBr LIB que usa DLL, ficou claro que o que falta para a Sefazclass decolar é só trocar o CAPICOM por outra DLL (a usada pelo ACBr).
Tanto o ACBr como os componentes da Tecnospeed por exemplo, não criam o XML pra vc, eles só cuidam de enviar e dar retorno do que foi enviado, a parte mais dificil de todo o processo é entender as regras fiscais para montar o XML, e não enviar ele para a Receita !!!!
De minha parte, quero ver se ainda este ano consigo dar inicio nos testes com Sefazclass+SSL, e claro, tendo sucesso vou passar pro Quintas disponibilizar no Git da Sefazclass.
Marcelo Neves
https://produto.mercadolivre.com.br/MLB ... 0067609615
whatsapp (41) 99786-3995
http://harbourdeveloper.blogspot.com
marcelo.souza.das.neves@gmail.com
https://produto.mercadolivre.com.br/MLB ... 0067609615
whatsapp (41) 99786-3995
http://harbourdeveloper.blogspot.com
marcelo.souza.das.neves@gmail.com
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
ACBrLib
Olá!
Será bom para a SEFAZCLASS, não sabia dessa limitação, fui olhar os fontes e só funciona com CAPICOM e está desfasado mesmo.
Bom também que o
Saudações,
Itamar M. Lins Jr.
Aguardando.quero ver se ainda este ano consigo dar inicio nos testes com Sefazclass+SSL,
Será bom para a SEFAZCLASS, não sabia dessa limitação, fui olhar os fontes e só funciona com CAPICOM e está desfasado mesmo.
Bom também que o
resolveu o problema dele.oribeiro escreveu:Grande Quintas,
Foi só não descarregar a DLL que resolveu o meu problema.
A sua sugestão foi certeira!
Muitíssimo obrigado.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
ACBrLib
Amiguinhos,
Sei que resolveu seu problema. Mas como o uso de carregamentos de DLL/OCX geralmente faço no corpo principal uma unica vez para evitar travamentos pense nas seguintes mudanças:
Assim o carregamento estará na memória sempre mas a chamada poderá ocorrer quantas vezes necessárias sem precisar descarregar.
Sei que resolveu seu problema. Mas como o uso de carregamentos de DLL/OCX geralmente faço no corpo principal uma unica vez para evitar travamentos pense nas seguintes mudanças:
Código: Selecionar todos
#include 'FIVEWIN.CH'
#define DLL_CDECL 0x08
#define DLL_STDCALL 0x20
#define DLL_SYSTEM 0x04
#define STR_LEN 256
function Main()
local oWnd
public oACBrNFe32 := DllLoad( 'ACBrNFe32.dll' )
public oACBrSat32 := DllLoad( 'ACBrSat32.dll' )
define window oWnd from 5,5 to 30,85 title "ACBrLib Teste"
@ 3,10 BUTTON "Imprime NF-e" size 100,50 OF oWnd ACTION ImprimirNFE()
@ 3,40 BUTTON "Imprime SAT" size 100,50 OF oWnd ACTION ImprimirSAT()
set message of oWnd to "Teste ACBrLib" date time noinset
activate window oWnd centered
return nil
static function ImprimirNFE(eArquivoOuXml, cImpressora, nNumCopias, cProtocolo, bMostrarPreview, cMarcaDagua, bViaConsumidor, bSimplificado)
local hResult, bufferLen, buffer, oErr
local oDll := oACBrNFe32 // DllLoad( 'ACBrNFe32.dll' )
...
static function ImprimirSAT(eArquivoOuXml, cImpressora)
local hResult, bufferLen, buffer, oErr
local oDll := oACBrSat32 // DllLoad( 'ACBrSat32.dll' )
...
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
- oribeiro
- Usuário Nível 1

- Mensagens: 30
- Registrado em: 15 Fev 2013 07:35
- Localização: Itu/SP
- Contato:
ACBrLib
Grande Rochinha,
Muito obrigado pela dica.
No meu sistema, eu estou utilizando três classes, uma para cada DLL: NFe, SAT e CTe. Agora estão todas funcionando 100%. Se alguém desejar utilizá-las, avise que eu disponibilizo.
Um abraço a todos.
Muito obrigado pela dica.
No meu sistema, eu estou utilizando três classes, uma para cada DLL: NFe, SAT e CTe. Agora estão todas funcionando 100%. Se alguém desejar utilizá-las, avise que eu disponibilizo.
Um abraço a todos.
Oscar Ribeiro
xHarbour+Fwh+WorkShop
xHarbour+Fwh+WorkShop
