我试图在c#中使用外部.dll文件编码,在我的Java应用程序中,我知道它包含的接口与我们可以使用的函数的dll,我可以将DLL加载到我的Java应用程序,但我如何使用它内的接口?我不知道JNI如何在这种情况下提供帮助。请帮助。在java中使用C#dll
回答
我怀疑你需要使用Java/COM桥如JACOB,或Java Native Access(你可能必须写一个桥梁,因为JNA是本地只访问)。
请参阅this SO answer了解更多详情。
我们可以使用JNA java 7不是6吧? – ama 2012-07-25 11:13:29
您可以使用由Robert Giesecke编写的项目模板从您的C#DLL创建本地导出。这使您可以在C#DLL中创建原生C风格API导出,并从Java或几乎任何其他语言调用它们。向下滚动到Unmanaged Export Library文件的页面底部。
或者,您可以使用ComVisible
创建COM类并从Java访问它。
我应该把使用ComVisible的类放在dll文件中,然后在java应用程序中使用它吗?如果是这样,我应该如何导入并调用它? – ama 2012-07-25 10:50:30
是的。这里是[示例](http://msdn.microsoft.com/en-us/library/c3fd4a20.aspx)。您需要将该DLL标记为COM Visible。请阅读[此问题](http://stackoverflow.com/questions/7092553/turn-a-simple-c-sharp-dll-into-a-com-interop-component)了解更多信息。 Brian Agnew的回答涵盖了在Java中使用COM。 – Polynomial 2012-07-25 10:53:20
- 1. 在C#中使用C++ dll#
- 2. 在C++中使用DLL时?
- 3. 在C++中使用Delphi DLL
- 4. 在swift中使用C++ DLL
- 5. 在C#中使用DLL库
- 6. 在C中使用COM dll#
- 7. 在C#中使用DLL#
- 8. 在C#汇编中引用Java DLL?
- 9. 使用在C#中使用COM的DLL
- 10. 在C#中使用C++ dll(WPF)
- 11. 在C++项目中使用c DLL
- 12. 在java中使用C lib(dll),并使用特定的c调用约定cdecl
- 13. 在Java中使用C接口的DLL(适用于Android)
- 14. 使用dll中的函数,在java中
- 15. 在C中调用C++ DLL
- 16. 如何在C#2.0 dll中使用C#4.0 Dll?
- 17. 在非托管C++ dll中使用托管c#dll
- 18. 使用 “C” DLL
- 19. 从java调用C++ dll
- 20. 在C++应用程序中使用DLL
- 21. 在Java项目中使用C#编写的DLL
- 22. 在java中使用jna加载delphi dll
- 23. 如何在Java ME中使用.dll
- 24. JNI问题:在Java中调用使用第三方DLL的dll
- 25. 使用C++ DLL在.NET
- 26. 在C#Com封装器中使用本机dll并在Silverlight中使用dll
- 27. 如何在powerbuilder中使用C#dll?
- 28. 在C++中使用COM对象dll
- 29. 如何在C++中使用dll文件?
- 30. 如何在vC++中使用c#dll?
JNI仅适用于本机库,不适用于托管代码。 – 2012-07-25 10:30:16