VB是不支持导出函数的,用插件做的DLL就不好讲了,也许你可以看看插件的说明 [解决办法] 你的调用方法是调用 API 形式的 DLL 函数用法,而 VB 是不支持开发 API 形式的 DLL 的,所以无论你怎么弄都会出问题的,除非你的 DLL 换成支持编译 API 形式 DLL 的开发工具,如 易语言、Delphi、VC、BC、GCC等等等等,反正 VB 不在这个范畴里。VB要做,只能做“类”或“控件”,然后用 CreateObject 来创建类对象或直接引用DLL类库或加载控件使用。 [解决办法] VB调用自行编译的DLL,应该先把DLL引用进来的吧,除非是其他C或DELPHI之类编写的DLL,才可以通过楼主这种方式来调用。 引用后可以通过定义来达到效果,比如 dim obj as tt.xxx obj.test('a','b','c') [解决办法] dll改为 Function test Lib "tt.dll" ( a() As byte, b() As byte, ReturnStr() As byte) As Integer 函数内容按照6楼的改
exe申明改为 private Declare Function test Lib "tt.dll" (Byref a As byte, Byref b As byte, Byref ReturnStr As byte) As Integer '
exe中 dim a() as byte a=StrConv(“123”, vbFromUnicode) 。。。。。。。。'b()同样方式定义 dim ret(256) as byte'假设256字节足够容纳返回的字符串 test a(0),b(0),ret(0)