Bom dia pessoal,
Estou com o seguinte problema: Tenho uma DLL desenvolvida em C# por uma outra empresa, e preciso acessar dois métodos que estão em uma classe dentro da DLL, estes métodos usam como assinatura String.
O problema é que a classe Java não está reconhecendo os métodos por conta das assinaturas.
Alguém já teve esse problema, alguém poderia me ajudar?
Obrigado!
uma dll c# não é código nativo. É IL(Intermediate Language), ou seja, byte code dotnet. Java só pode acessar código nativo, e através de jni ou jna.
Uma solução seria criar um mapeamento em c++, para a dll C#, e mapear do java essa dll nativa. Um trabalho que eu diria porco.
Na minha opinião, é preferível reescrever o código em c++, pois ficaria uma solução adequada e sem gambiarras.
[quote=juliocbq]uma dll c# não é código nativo. É IL(Intermediate Language), ou seja, byte code dotnet. Java só pode acessar código nativo, e através de jni ou jna.
Uma solução seria criar um mapeamento em c++, para a dll C#, e mapear do java essa dll nativa. Um trabalho que eu diria porco.
Na minha opinião, é preferível reescrever o código em c++, pois ficaria uma solução adequada e sem gambiarras.[/quote]
O problema é que não posso reescrever o código, pois é um código de uma outra empresa.
Algum tutorial de como mapear a DLL ???
Obrigado.
[quote=ShOtCeL][quote=juliocbq]uma dll c# não é código nativo. É IL(Intermediate Language), ou seja, byte code dotnet. Java só pode acessar código nativo, e através de jni ou jna.
Uma solução seria criar um mapeamento em c++, para a dll C#, e mapear do java essa dll nativa. Um trabalho que eu diria porco.
Na minha opinião, é preferível reescrever o código em c++, pois ficaria uma solução adequada e sem gambiarras.[/quote]
O problema é que não posso reescrever o código, pois é um código de uma outra empresa.
Algum tutorial de como mapear a DLL ???
Obrigado.[/quote]
Aqui tem um bom tutorial.
Mas tenha em mente que seu projeto terá de usar 2 vms.
[quote=juliocbq][quote=ShOtCeL][quote=juliocbq]uma dll c# não é código nativo. É IL(Intermediate Language), ou seja, byte code dotnet. Java só pode acessar código nativo, e através de jni ou jna.
Uma solução seria criar um mapeamento em c++, para a dll C#, e mapear do java essa dll nativa. Um trabalho que eu diria porco.
Na minha opinião, é preferível reescrever o código em c++, pois ficaria uma solução adequada e sem gambiarras.[/quote]
O problema é que não posso reescrever o código, pois é um código de uma outra empresa.
Algum tutorial de como mapear a DLL ???
Obrigado.[/quote]
Aqui tem um bom tutorial.
Mas tenha em mente que seu projeto terá de usar 2 vms.[/quote]
obrigado Julio.
Não gosto de fazer esse tipo de coisa, mas vamos lá …
Assim q tiver concluído posto novamente aqui para mostrar qual foi a solução, com certeza alguém um dia terá este problema também.