
正文
vb.net如何调用c,如何运行vb
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
vb如何实现调用c#.net写的一个dll,这个dll里面都是些类,不是函数,想用vb把里面的类调用出来,求帮忙!
按照我的理解,你的这个需求是没有办法做到的, 除非C#的dll被封装为了一个COM组件并且注册了,但是你的这个dll已经写成了,所以理论上来说应该不是com,而C#的程序集是不提供向前兼容的,所以用一个老的语言调用新的技术的组件是做不到的,不过也有一种可能性,不过很难实现,大体逻辑这样,首先通过vb调用一个native的组件,用C或者c++完成,在这个组件里面加载clr,在clr里面加载c#的程序集,实例化对象,执行调用
相关问答
Q1: 如何在vb.net调用c程序
------------------------------------------00000000000000000000000000++++++++++++++++++
Q2: vb.net 调用C语言可执行程序并传值?
在c语言中每一个变量都有两个属性一个是值,一个是址。比如inta=2;变量a的值是2,变量a的地址,可以用取地址
操作符
获取,即a。因此以C语言的函数传递中具备两种方式传递参数,一种是传址,一种传值。比如voidf1(intv){;}//函数f1v
Q3: VB.net如何调用C++ DLL,有重谢
如果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的也差不多
Q4: vb.net无法引用C++编写的dll怎么办?
如果DLL不是你写的,且你要调用的函数不是__stdcall声明,VB直接调用是会报错的
如果DLL是你写的,注意调用约定问题,并看以下代码
***************************************************
以下是DLL代码
.cpp里这么写
1extern "C"__declspec(dllexport) void __stdcall HelloWorld()
2{3 MessageBox(NULL,"HelloWorld","HelloWorld",NULL);4}
.def里这么写
LIBRARY "XXXX"
EXPORTS
; 此处以下添加
HelloWorld@1
*************************************************
vb里这么写
1 Public Declare Sub HelloWorld Lib "XXXX.dll" ()
然后调用就可以了,上面是VB的代码,或许VB.net的也差不多
Q5: 怎样在vb.net中插入C语言
如你所说:
.net中包括 vb.net java.net c#.net等.
.net是一个大的平台 它集成了很多中语言就如上面所说的.
你可以选择各种不同的语言来进行开发,个子遵循自己的语言风格.
Asp.net不属于咱们刚才说的那种语言环境当中,它不是个语言.而是一种模式.
ASP.net代表的就是 B/S开发,这个你明白吧?B/S就是 浏览器/服务器的模式.也就是咱们常说的网站开发.
C语言是一门单纯的语言,C语言是一个母语.就像VB的母语是PasCal一样.
.net中以c语言为母语的语言就是C#.net和Java.net两种.
.net可以用来开发网页和软件应用程序.
而C语言只能来写一些操作计算机底层的代码.
这样说可以嘛.








