[英]How to access classes and methods of vb.net native dll file from jna or other library
我有的
a)我使用過jna庫。
b)我的dll是vb.net本機dll文件。
c)您可以查看此鏈接以獲取有關dll 鏈接的更多信息
我的源代碼如下
接口
package com.dll.lib;
import com.sun.jna.Library;
import com.sun.jna.Native;
public interface BrowseControl extends Library {
BrowseControl instance = (BrowseControl)Native.loadLibrary("Vertex FXBOAPI10.5.9", BrowseControl.class);
}
類
package com.dll.main;
import com.dll.lib.BrowseControl;
public class MainTest {
public static void main(String[] args) {
BrowseControl control=BrowseControl.instance;
System.out.println("Brwoser: "+control.getClass());
}
}
}
這段代碼正在運行。
我想要的是
a)如何在java編程語言中從dll訪問他們的類和方法?
b)如何引用{VertexFX Backoffice API}
Dll,然后定義類型為CVertexFXBOAPI
類的Object,之后調用方法Object.SetLoginInfo
和Object.Login
謝謝
Yo可以通過JNI使用共享庫中的本機代碼。 JNI提供了Java和代碼之間的橋梁。 但是,您必須確保為本機例程保留命名約定。
在你的情況下(你想要調用本機代碼的DLL)你可以通過JNI包裝器來編寫代碼。 這樣,您可以保留DLL原樣。
看看這里的示例代碼,其中:
http://jnicookbook.owsiak.org/recipe-No-018/
這不是您正在尋找的(因為代碼適用於macOS / Linux),但架構將非常相似。
你的JNI包裝器(從Java調用) - 這將是一個本機代碼 - 將加載你已經擁有的庫(一個在其他人生成的DLL內)。 然后,您需要從該DLL調用一個函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.