Are you using the StdCall calling convention in your DLL?
If not you may have to declare the dll import differently i.e.:
<DllImport("dnslib2.dll", EntryPoint:="CanVBSeeThis", _
SetLastError:=False, CharSet:=CharSet.Ansi, _
ExactSpelling:=True, _
CallingConvention:=CallingConvention.Cdecl)>
Public Shared function CanVBSee (byval s as string) as long
'\\ No code goes here....
End Function
Check out the DllImport class for more info..
HTH,
Duncan