Como passar o código de VB a Fivewin/xharbour?
'
' declaração das variáveis que serão utilizadas na passagem de parâmetros da DLL
'
' ********IMPORTANTE O tipoXML da versão 1.04 é 35 ***************
'
Dim XML As String ' informar uma string com o XML que será validada.
Dim msgResultado As String ' retorna a literal do resultado da chamada do WS
Dim erroXML As String ' retorna um texto com o erros de validações encontados
Dim tipoXML As Long ' informar o código do ***tipoXML*** do schema XML que será utilizado na validação
Dim qtdeErros As Long ' retorna a literal com resultado da chamada da DLL
Dim resultado As Long ' código do resultado da chamada da DLL
'
' carregar arquivo XML na string
'
Dim nomeArquivo As String ' nome do arquivo que será validado
'
nomeArquivo = "exemplo.xml"
'
' Carrega o conteúdo do nome do arquivo em XML
'
Open nomeArquivo For Input As #1
XML= Input$(LOF(1), #1)
Close #1
' ********IMPORTANTE O tipoXML da versão 1.04 é 35 ***************
tipoXML = 35 ' validar CT-e (opção fixa para validar CT-e layout 1.04 neste exemplo)
qtdeErros = 0 ' quantidade de erros, se o XML não estiver assinado vai ocorrer um erro
erroXML = "" ' retorna um texto com o erros de validações encontados
msgResultado = "" ' retorna a literal com resultado da chamada da DLL
resultado = 0 ' código do resultado da chamada da DLL
'
' referenciando a DLL em late binding
' não é necessário fazer o reference da DLL
' o intelisense não funciona
'
Dim objCTeUtil As Object
Set objCTeUtil = CreateObject("CTe_Util.Util")
'
Screen.MousePointer = vbHourglass ' ponteiro ampulheta
'
'
resultado = objCTeUtil.ValidaXML(XML, tipoXML, msgResultado, qtdeErros, erroXML)
'
'
Screen.MousePointer = vbDefault ' ponteiro normal
'
' tratar retorno
'
If (resultado = 0) Then
MsgBox msgResultado, vbInformation, "Informação"
Else
MsgBox "Processo de validação do XML falhou..." & vbCrLf & msgResultado, vbExclamation, "Atenção"
End If
'
' liberar DLL
'
Set objCTeUtil = Nothing
End Sub
Gracias.