O fonte abaixo exposto em FiveWin não é de minha autoria mas vejo-o como muito promissor se conseguirmos fazê-lo "rodar".
Eu trabalho com Clipper e esporadicamente com xHarbour e encontrei essa rotina num fórum de FiveWin.
Tentei fazer funcionar mas não consegui, pelo motivo de que existem funções não catalogadas no XHarbour e a sua supressão prejudicou o programa gerado, que não faz o acesso aos Portais Nacional e de SP, ou se o fazem não carregam a chave de 44 bytes, o que facilitaria sobremaneira a consulta das NFEs.
Agradeceria o empenho para funcionar essa rotina muito útil.
///////////////////////////////////////////////////////////////////////////////
/// NFe_ChecaPortal - Função para checar o numero do Danfe nos portais Nacional ou Estado de São Paulo
/// Esta função faz com que abra as paginas dos portais de consulta das NFes e preencha os campos das chaves automaticamente.
/// Assim será necessario digitar somente o Capcha
///
/// Parametros: f_cChave > Numero da chave (Danfe) no formato caracter
/// f_nPortal > Portal a abrir - Formato Numérico
/// 1- Portal Nacional
/// 2- Portal do estado de São Paulo
FUNCTION NFe_ChecaPortal(f_cChave,f_nPortal)
local oOle, oOleDoc := Array(2)
Default f_nPortal := 1, f_cChave := ""
oOle:= CreateObject("InternetExplorer.Application")
oOle:Visible := .t. // Apresenta o Browser
oOle:ToolBar := .f. // Desativa a barra de ferramentas
oOle:StatusBar := .f. // Desativa a barra de status
oOle:MenuBar := .f. // desativa a barra de menu
If f_nPortal == 1
oOle:Navigate2("http://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8=")
Else
oOle:Navigate("http://nfe.fazenda.sp.gov.br/ConsultaNFe/consulta/publica/ConsultarNFe.aspx") // Abre o site
EndIf
WHILE oOle:Busy
syswait(.5)
END
If f_nPortal == 1
oOle := oOle:Document()
oOle:All:Item("ctl00$ContentPlaceHolder1$txtChaveAcessoCompleta",0):Value := f_cChave
Else
oOle := oOle:Document()
oOle:All:Item("ctl00$ContentMain$tbxIdNFe"):Value := f_cChave
EndIf
SysRefresh()
return .t.
///////////////////////////////////////////////////////////////////////////////