C# 从c调用VB.Net函数
我有一个vb.net类库,我的c应用程序正在访问该方法。我的C代码给了我编译时错误,即语言不支持“Start”,其中Start是我的方法名 启动方法的签名为C# 从c调用VB.Net函数,c#,vb.net,compiler-errors,C#,Vb.net,Compiler Errors,我有一个vb.net类库,我的c应用程序正在访问该方法。我的C代码给了我编译时错误,即语言不支持“Start”,其中Start是我的方法名 启动方法的签名为 Public Sub Start(Byval frm as Form, ByVal db as DBAccess, ByVal roleID as integer) 其中DBAccess是一个用户定义的类 我的c调用代码是 obj.Start(frm, db, roleI
Public Sub Start(Byval frm as Form,
ByVal db as DBAccess,
ByVal roleID as integer)
其中DBAccess是一个用户定义的类
我的c调用代码是
obj.Start(frm, db, roleID);
根据,此错误可能由VB.net声明中的可选参数或C中不支持的类型引起。
也许您应该重新编译vb.net库并重新添加对c项目的引用。
但我认为您应该将方法定义更改为:
Public Sub Start(Byval frm as Form, ByVal db as DBAccess, ByVal roleID as Int32)
roleID的类型从更改为。我怀疑错误消息是否为语言不支持“Start”。请显示更多的调用代码,包括obj的声明和确切的编译错误;你认为静态关键字与此有关吗?我的类是静态的,在这里我编写了这段代码。编译时错误正是我前面说过的。解释错误消息编辑:这是针对类的,而不是针对方法名的,但不知道在您的案例中是什么原因造成的。@Jon Skeet发生此错误是因为VB.NET和C之间存在一些不兼容的东西。这可能正好发生在错误文本中。@MSingh:这不是您的确切C代码,考虑到语言不支持的语法问题,我怀疑这个错误是否正是你写的。剪贴是你的朋友。