日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > C# >内容正文

C#

c#.net2005 调用evc4.0生成的dll文件

發(fā)布時(shí)間:2024/4/17 C# 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c#.net2005 调用evc4.0生成的dll文件 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

又好久沒(méi)有寫(xiě)博客了,這一段時(shí)間一直在做東西,碰到了一些問(wèn)題并解決掉了,所以把它寫(xiě)出來(lái)。寫(xiě)程序時(shí)碰到的第一個(gè)問(wèn)題就是用c#.net2005 調(diào)用evc4.0生成的dll文件。

首先,在調(diào)用自己寫(xiě)的dll時(shí),一定格式要正確,也就是這樣的:
在*.h文件中加入
extern "C" __declspec(dllexport) int? MyFunction(void);
在*.cpp文件中加入
__declspec(dllexport) int MyFunction(void)
{
??? // 在此處添加實(shí)現(xiàn)代碼
??? return 12;
}
在*.edf文件中加入
EXPORTS
?? MyFunction??

?其次,在生成dll文件時(shí),選定正確的平臺(tái),也就是pocketpc2003,win32 AMR4I,因?yàn)镃#是pocketpc2003或windows mobile 5.0的,并且C#2005的模擬器是支持各種架構(gòu)的,不像以前的模擬器只支持x86。也就是說(shuō)如果ppc device是x86的,也可以在編譯時(shí),選擇x86。

最后,就可以將編譯好的dll文件,加入到C#工程的debug文件夾下。
1。將加入的dlll文件add到工程中,并將屬性改為copy always。
2。在調(diào)用dll文件的*cs文件中加入命名空間System.Runtime.InteropServices;
3。調(diào)用格式為:
? [DllImport("Test.dll")]
??????? extern static int MyFunction(void);
在[DllImport("*.dll")]中還有一些參數(shù),可按需要加入。

注:
在調(diào)用dll文件后在模擬器或Device上運(yùn)行時(shí)會(huì)出現(xiàn)一些錯(cuò)誤信息,這些錯(cuò)誤的含義是:
Missing Method Exception 是C#沒(méi)有找到該dll文件的入口。
No Support Exception是在調(diào)用dll文件時(shí),沒(méi)有使用正確的數(shù)據(jù)類(lèi)型轉(zhuǎn)換。

轉(zhuǎn)載于:https://www.cnblogs.com/randylee/archive/2006/09/24/513126.html

總結(jié)

以上是生活随笔為你收集整理的c#.net2005 调用evc4.0生成的dll文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。