#define DC_CALL_STD 0x0020 // __stdcall
#define DLL_OSAPI DC_CALL_STD
#define STR_LEN 256
#define ACBrLIB "ACBrNFe32.dll"
Function main
// Se mandar .f. - imprime o xml
// Se mandar .t. - gera o pdf
ImprimirPDFNfe( 'C:\ARQXML.XML', .F. )
Return nil
FUNCTION ImprimirPDFNfe(cArq, lPdf)
Local cTexto := ''
Local cBufferlen
Local hLib
hLib := DllLoad(ACBrLIB)
iRet := DllCall(hLib, DLL_OSAPI, "NFE_Inicializar", "", "")
bufferLen:= STR_LEN
cTexto := Space(bufferLen)
iRet := DllCall(hLib, DLL_OSAPI, "NFE_CarregarXML", hb_StrToUTF8(cArq))
If lPdf
iRet := DllCall(hLib, DLL_OSAPI, "NFE_ImprimirPDF")
Else
iRet := DllCall(hLib, DLL_OSAPI,"NFE_Imprimir", hb_StrToUTF8(""), 1, hb_StrToUTF8(""), hb_StrToUTF8(""), hb_StrToUTF8(""), hb_StrToUTF8(''), hb_StrToUTF8(""))
EndIf
iRet := DllCall( hLib, DLL_OSAPI,"NFE_Finalizar")
hLib := NIL
RETURN nil
1 curtida