vb.net约定 vbnet doevent

vb.net无法引用C编写的dll怎么办?如果DLL不是你写vb.net约定的,且你要调用vb.net约定的函数不是__stdcall声明,VB直接调用是会报错的
如果DLL是你写的,注意调用约定问题,并看以下代码
***************************************************
以下是DLL代码
.cpp里这么写
1extern "C"__declspec(dllexport) void __stdcall HelloWorld()
2{3MessageBox(NULL,"HelloWorld","HelloWorld",NULL);4}
.def里这么写
LIBRARY"XXXX"
EXPORTS
; 此处以下添加
HelloWorld@1
*************************************************
vb里这么写
1 Public Declare Sub HelloWorld Lib "XXXX.dll" ()
然后调用就可以了,上面是VB的代码,或许VB.net的也差不多
结尾是end sub是什么语言?这个代码是用vb.net语言写的,用到了.net类库 。
End Sub在vb.net语言中是用来结束一个过程的 , 如:
【vb.net约定 vbnet doevent】Sub Show(s As String)
MsgBox(s)
End Sub
VB .NET编程是否可以不依赖.NET Framework这是典型对.net构架不理解造成的!
只要是.net编程 , 一定使用的是.net类库,必须是同运行版本的.net支持方可运行 。而所谓的vb.net只是说编程的语言层使用的是vb语言而已 。该语言在.net构架下被编译成为IL语言(MSIL,严格说来是IL的一个子集) 。而上层的语言只是产生软件时所使用的一个不同语言规则而已 , 与IL已经没有任何相关性了 。上层语言无论是C#还是VB,甚至是Java(J#)均只适应编程人员的一个策略,与整个构造没有多大的相关性 。
.net的最终目的就是让不同的语言编程人员能协同工作,那么语言在其中的区别没有多大了,所有的运行核心都是由.net完成的,没有必须依赖于.net 。这是没有任何疑问的 。
vb.net就是.net,只是表示用VB语言人的称呼 , 用C#的则称其为C#.net,但不管是哪种,它是无法脱离.net的 。
VB.net如何调用CDLL,有重谢如果DLL不是你写的,且你要调用的函数不是__stdcall声明,VB直接调用是会报错的
如果DLL是你写的,注意调用约定问题,并看以下代码
***************************************************
以下是DLL代码
.cpp里这么写
extern "C"__declspec(dllexport) void __stdcall HelloWorld()
{
MessageBox(NULL,"HelloWorld","HelloWorld",NULL);
}
.def里这么写
LIBRARY"XXXX"
EXPORTS
; 此处以下添加
HelloWorld@1
*************************************************
vb里这么写
Public Declare Sub HelloWorld Lib "XXXX.dll" ()
然后调用就可以了,上面是VB的代码,或许VB.net的也差不多
vb.net约定的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于vbnet doevent、vb.net约定的信息别忘了在本站进行查找喔 。

    推荐阅读