我在查找在 VB.NET 中对非托管 DLL 进行函数调用的语法时遇到了一些麻烦。有人熟悉这个吗?
让我们假设在非托管 DLL“Connector.DLL”中有一个“Connected”函数。我想通过创建一个抽象函数调用来调用这个函数。
我已经看到了一些看起来像的代码
[DllImport("Connector.DLL")]
Public Shared Function Connect(ByVal intPort)
但是这种语法对我不起作用。
我在查找在 VB.NET 中对非托管 DLL 进行函数调用的语法时遇到了一些麻烦。有人熟悉这个吗?
让我们假设在非托管 DLL“Connector.DLL”中有一个“Connected”函数。我想通过创建一个抽象函数调用来调用这个函数。
我已经看到了一些看起来像的代码
[DllImport("Connector.DLL")]
Public Shared Function Connect(ByVal intPort)
但是这种语法对我不起作用。
你检查过 pinvoke.net吗?
试试下面的代码。
Public Declare Function Connect Lib "Connector.DLL" (<MarshalAs(UnmanagedType.I4)> ByVal intPort As Integer) As Integer
在 Visual Studio 中,添加对此 Dll 的引用。
在代码中:
Dim vr as new COMDllClass()
vr.FunctionInDll()
编辑每条评论:
试试这个代码:
<DllImport("Connector.DLL")> _
Public Shared Function Connect(ByVal intPort)