从VB调用非托管DLL

时间:2009-06-12 20:42:07

标签: vb.net visual-studio unmanaged

我在查找在VB.NET中对非托管DLL进行函数调用的语法时遇到了一些麻烦。有人熟悉这个吗?

让我们假设在非托管DLL“Connector.DLL”中有一个“已连接”功能。我想通过创建一个抽象函数调用来调用这个函数。

我看到一些类似于

的代码
[DllImport("Connector.DLL")]
Public Shared Function Connect(ByVal intPort)

但是这种语法对我不起作用。

3 个答案:

答案 0 :(得分:1)

你签出了pinvoke.net吗?

答案 1 :(得分:0)

请尝试以下代码。

Public Declare Function Connect Lib "Connector.DLL" (<MarshalAs(UnmanagedType.I4)> ByVal intPort As Integer) As Integer

答案 2 :(得分:-2)

在Visual Studio中,添加对此Dll的引用。

在代码中:

Dim vr as new COMDllClass()
vr.FunctionInDll()

每条评论的编辑:

试试这段代码:

<DllImport("Connector.DLL")> _
Public Shared Function Connect(ByVal intPort)