é possivel listar os metodos existentes em uma dll usando JNI?
O problema é o seguinte tenho uma dll que estou acessando normalmente , porem não tenho o layout dessa dll
que me retorne os metodos e seus argumentos , e gostaria de saber se é possivel usando JNI listar os metodos dessa dll , se existe algum metodo que faça isso
Depende do tipo de DLL.
Se for uma DLL que você pode acessar via JNI de maneira simples (ou seja, incluindo o arquivo .h e o .lib correspondentes dessa DLL), não é possível listar os parâmetros, porque eles não são gravados na DLL. (que peninha )
Se for uma DLL COM ou ActiveX (ou seja, aquelas que requerem que você use um regsvr32 para funcionarem, mais conhecidas como DLLs registradas, e que normalmente são escritas em VB 6 ou Delphi, às vezes em C++), é difícil chamá-las via JNI, você precisa de uma biblioteca como o Jacob. Esse tipo de DLL contém um recurso chamado “TLB”, que é uma listagem dos métodos.
Se for uma DLL .NET, também é difícil chamá-las via JNI e você precisa de alguma ponte Java -> .NET para funcionarem. Essas DLLs podem também ter seus métodos listados.
J
JavaX_JavaX
entanglement:
Depende do tipo de DLL.
Se for uma DLL que você pode acessar via JNI de maneira simples (ou seja, incluindo o arquivo .h e o .lib correspondentes dessa DLL), não é possível listar os parâmetros, porque eles não são gravados na DLL. (que peninha )
Se for uma DLL COM ou ActiveX (ou seja, aquelas que requerem que você use um regsvr32 para funcionarem, mais conhecidas como DLLs registradas, e que normalmente são escritas em VB 6 ou Delphi, às vezes em C++), é difícil chamá-las via JNI, você precisa de uma biblioteca como o Jacob. Esse tipo de DLL contém um recurso chamado “TLB”, que é uma listagem dos métodos.
Se for uma DLL .NET, também é difícil chamá-las via JNI e você precisa de alguma ponte Java -> .NET para funcionarem. Essas DLLs podem também ter seus métodos listados.
Obrigado, entanglement pelo retorno , sei que a dll que estou usando é feita em c++, segundo o frabricante e que não é do tipo registrada
Att ,
E
entanglement
Até aí você pode ter um cenário complexo. Vamos dar um exemplo bobo.