我想调用一个自定义的dll,其中一个函数的参数默认类型为
ByRef bTest as Byte
我现在想在调用该函数时把该参数设置成不指向任何类型的变量值,就像在VC中的NULL值,请问怎样调用?
因为在VB中不能把一个BYTE类型直接赋值为NULL.

解决方案 »

  1.   

    bTest as Long 调用直接赋0,试试!
      

  2.   

    跳蚤老兄:首先非常感谢你,但是你的答案是错误的,因为函数的参数类型是byte型的,程序会提示参数类型不匹配。
    其实我自己已经试过很多次了,例如:
    1) dim bTest as Byte
       bTest = 0
    2) dim bTest as Variant
       bTest = empty
    3) dim  bTest(128) as Byte
       bTest(0) = Null
    以上这些都不好用,我真是没有办法了。有那位可以再指点指点啊?
      

  3.   

    跳蚤是正确的,必须声明为as Long,然后调用时直接传递地址的值,传递0的话就相当于是NULL值了
      

  4.   

    你在模块中申明函数时就应该写成bTest as Long ,调用的时候取0应该是不会错的吧!
    建议你去API版问绿豆!他很牛的!偶也继续关注:)
      

  5.   


    把ByRef bTest as Byte改成 byref bTest as long
    然后传个0
      

  6.   

    谢谢各位了,我去问绿豆了。
    你们说的这些方法我都试过了,and I' sorry to say that it's unuseless.
    如果有结果我会再在这发表帖子写上的。
      

  7.   

    上一贴里没有说全:)
    应该是声明为ByVal bTest as Long