国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

java調(diào)用第三方dll文件 究竟是.Net好還是Java好,歡迎大家發(fā)言,暢所欲言?

究竟是.Net好還是Java好,歡迎大家發(fā)言,暢所欲言?我選擇dotnet,因?yàn)橛钪嬷杏械谝粋€(gè)ide-vs2019祝福,不接受駁斥。我該怎么用Java程序調(diào)用C#生成的dll文件?首先,您需要編寫(xiě)本機(jī)

究竟是.Net好還是Java好,歡迎大家發(fā)言,暢所欲言?

我選擇dotnet,因?yàn)橛钪嬷杏械谝粋€(gè)ide-vs2019祝福,不接受駁斥。

我該怎么用Java程序調(diào)用C#生成的dll文件?

首先,您需要編寫(xiě)本機(jī)Java方法。公共類(lèi)測(cè)試{靜態(tài){System.loadLibrary文件(“mydll”)public static void main(string[]args){new test()。Test()}public native void Test()}

2是用javac編譯的。使用javah生成頭文件。生產(chǎn)頭文件位于執(zhí)行這些命令的目錄中。

3、編寫(xiě)c代碼。包括此頭文件。在頭文件中實(shí)現(xiàn)測(cè)試功能。

4、編譯的C語(yǔ)言程序。將C轉(zhuǎn)換成庫(kù)文件的DLL后綴。

5、在本例中,只需將庫(kù)文件放在項(xiàng)目的根目錄中。

java調(diào)用C寫(xiě)的DLL?

C調(diào)用C的DLL更方便。

1. 創(chuàng)建一個(gè)新的C#類(lèi)庫(kù)

在代碼編輯之后,生成類(lèi)庫(kù)并得到一個(gè)DLL

2。創(chuàng)建一個(gè)新的控制臺(tái)應(yīng)用程序來(lái)調(diào)用類(lèi)庫(kù)

2.1右鍵單擊引用,在彈出的對(duì)話框中單擊添加,切換到瀏覽選項(xiàng)卡,然后找到生成的DLL

添加后,控制臺(tái)應(yīng)用程序變成這樣

2.2,您可以調(diào)用它。首先,介紹類(lèi)庫(kù)的名稱(chēng)空間,然后可以調(diào)用它。

3. 構(gòu)建控制臺(tái)應(yīng)用程序并運(yùn)行它(記住將控制臺(tái)應(yīng)用程序1設(shè)置為啟動(dòng)項(xiàng))

以上是一個(gè)簡(jiǎn)單的調(diào)用。當(dāng)然,C#甚至可以將所有表單封裝到DLL中,被調(diào)用方并不局限于控制臺(tái)應(yīng)用程序。但是想法是一致的

如果DLL不是你寫(xiě)的,并且你想調(diào)用的函數(shù)不是你寫(xiě)的,Stdcall聲明VB direct call會(huì)報(bào)告一個(gè)錯(cuò)誤

如果DLL是你寫(xiě)的,注意調(diào)用約定,看下面的代碼

**********以下是dll代碼。這是用CPP

外部“C”uuudeclspec(dllexport)voiduuustdcall HelloWorld()

{

消息框(null,“HelloWorld”,“HelloWorld”,null)}。Def

庫(kù)“XXX”

導(dǎo)出

在此處添加地獄世界@1

*******************************************************

公共聲明子HelloWorld庫(kù)“XXXX.dll“那么,就可以用VB代碼了。VB.net版JNI是一個(gè)通過(guò)Java調(diào)用C/C的動(dòng)態(tài)鏈接庫(kù)(DLL)。所以我想到了。類(lèi)-->。H-->dll是不正確的,這也違背了JNI的初衷。DLL是由C/C生成的。以前的一個(gè)項(xiàng)目使用java調(diào)用C/cdll,所以我對(duì)此很熟悉。該DLL由C程序員編寫(xiě),可以在microsoftvisualc6.0編輯器中生成。然后Java程序員使用JNI調(diào)用DLL中實(shí)現(xiàn)的函數(shù)(方法)。

VB.net如何調(diào)用C DLL,有重謝?

不要告訴我這個(gè)過(guò)程。

將DLL文件放入項(xiàng)目的bindebugdirectory。如圖所示:

請(qǐng)單擊“輸入圖片說(shuō)明”

,然后在要引用的文件代碼中添加這樣的語(yǔ)句:

“[dllimport(”***。DLL”,調(diào)用約定=呼叫會(huì)議.Cdecl)],然后按以下格式聲明所需函數(shù):

public static external ReturnType functionname(type name)

public可以替換為其他內(nèi)容,如private,而static external則是必需的。如圖

2.,則調(diào)用它。如圖所示: