Oi Renato,
Finalmente deu certo!!!!
Vou postar abaixo o que fiz!
Na definição do método, defini a variável de retorno não como string mas como psz:
_DLL FUNCTION CNPJ_Consultar(eCNPJ AS STRING, eProvedor AS INT, sResposta REF PSZ, esTamanho REF INT ) AS INT PASCAL:ACBrConsultaCNPJ32.CNPJ_Consultar
No programa que chama o método, a variável que vai receber a resposta esta como global e tipo PSZ:
GLOBAL V_Dados AS PSZ
A chamada do método continuou da mesma forma:
V_Retorno := CNPJ_Consultar('13397985000182',2,@V_Dados,@V_Tamanho)
Para ver o retorno como uma string, criei uma outra variavel V_DadosString como sendo string e fiz a conversão de PSZ em string
Local V_DadosString as string
V_DadosString := Psz2String(@V_Dados)
Interessante que normalmente eu faria a conversao sem o "@", porém ai trava o programa. Colocando o @ como acima ai funcionou.
Testei também definir a variável que vai receber o retorno como Publica e Privada, mas ai não funcionou. Somente como Global é que retornou corretamente.
Enfim, se não fosse o seu empenho eu já teria desistido! rs... Mas como vc teve a boa vontade de testar e dar sugestões, me incentivou a ir mais fundo e agora posso usar todas as funções das LIBs do ACBr...
Agradeço muitooooo a sua ajuda!
Forte abraço!
Sergio