VC++ 生成了个DLL sha.dll
函数形式是 void Meid_To_pESN(char Meid[32] ,char pESN[32])
如果我想使用VB调用这个函数 改怎么声明呢,在线等待
函数形式是 void Meid_To_pESN(char Meid[32] ,char pESN[32])
如果我想使用VB调用这个函数 改怎么声明呢,在线等待
解决方案 »
- 请大家推荐一套界面库
- 如何将一段字符串变量转换为可执行的代码?
- vb6如何写txt文件
- 求教DataGrid问题,敬请各位大侠赐教!
- evb中连接sql server 数据库的写法
- 关于删除记录的一个问题!!(请各位高手解答。)
- 各位高手,大侠,前辈,在VB中如何实现打印功能?谢谢了。
- vsprinter打印vsflexgrid时,边框是虚的,怎么办?
- 从vb6升级到.net后的软件,是不是100%会需要.net framework才能运行的?还是说有部分不用?vc6编写的好像就部分不用
- SQL怎么转换ACCESS
- VB 多行合并
- 何时必须要 err.clear 呢?好象这个清除会自动执行,何时必须显式执行呢?
Dim p(0 To 31) As Byte
Delclare Procedure Meid_To_pESN Lib "sha.dll" (Meid() As Byte,pESN() As Byte)Call Meid_To_pESN(M,p)
Dim p(0 To 31) As Byte
Declare Sub Meid_To_pESN Lib "sha.dll" (Meid() As Byte, pESN() As Byte)Call Meid_To_pESN(M, p)
VB中M,p不能代表一个数组吧?
compile error:
type mismath: array or user-defined type expected
public p(0 To 31) As Byte
Declare Sub Meid_To_pESN Lib "sha.dll" (Meid() As Byte, pESN() As Byte)Call Meid_To_pESN(M, p)
BYTE型数组传递成字符串 好像 就不是一对一的传递了,而是两个BYTE对应一个字符,要通过ASCILL码换算
Dim M As String
Dim p As String
Declare Sub Meid_To_pESN Lib "sha.dll" (ByVal Meid As String, ByVal pESN As String)Call Meid_To_pESN(M, p)
如果以BYREF传递就会报错,
而且我想多问一句,调用C的DLL时,为什么不生成EXE,调试的时候运行会报BAD DLL....的错误呢
3Q
程序运行是加载dll时,如果没有指明绝对路径,首先会在当前目录中寻找,然后到windows,system32等目录中查找,再到path环境变量所示的目录中寻找。如果把dll放在工程目录中,exe文件当然一下就找到dll了,如果在vb中运行程序,则当前目录是vb所在的目录,当然找不到dll了。
我用VB做过这样的DLL,设置一个BYREF型的STRING变量,用来返回函数结果描述