parâmetros in/Out com JACOB

Olá pessoal,

Estou utilizando o framework JACOB para acesso a COM utilizando DLLs escritas em C#.

Alguns métodos da DLL possuem parâmetros do tipo entrada e outros do tipo saída como demonstro na assinatura:

Onde:

[list]Parametros e NFE são parametros de entrada de dados[/list]
[list]E NFeAssinada é um parametro de saída que o método vai atribuir um valor a esta variável.[/list]

O método AssinarNFe não me retorna a informação que necessito, somente atribui o valor a variável NFeAssinada.

No código, utilizando o framework JACOB:

String NFeAssinada = "";
Object nfe = new ActiveXComponent("nfe"); //instancio o objeto representativo da DLL
Dispatch.call(nfe , "AssinarNFe", Parametros,NFe,NFeAssinada); //Chamo o método AssinarNFe()

System.out.println(NFeAssinada); //Me retorna vazio ao invés de retornar o valor atribuido pela DLL

Apesar de passar a referência NFeAssinada para o método AssinarNFe, ela me retorna vazio.
Consulto o manual e o suporte do fabricante da DLL e eles me informam que a sintaxe é essa mesma.

Alguém sabe como faço para acessar atributos do tipo OUT, em um método utilizando JACOB como ponte de uma DLL?
Ou um material para que eu possa dar uma lida?

Desde já agradeço.

Quando um parâmetro é (usando a terminologia VB) “ByRef”, ou seja, passado por referência, no Jacob você tem de usar uma variável do tipo Variant (estou sem nenhum acesso à documentação), não String. Veja na documentação do Jacob como é que se trabalha com variáveis do tipo Variant, e em particular, como é que se converter uma Variant para uma String.

Lembre-se que o Java diz que o tipo String é imutável, e o Jacob não pode fazer nada a esse respeito.