我用Delphi的zlib单元写了一个压缩用的动态库,想在VB中调用.
可是在参数传递中存在问题.
Delphi中用shortstring,Anstring,widestring,PChar,OLEVarait时,VB中怎么样与之对应.
请高手指点.

解决方案 »

  1.   

    Delphi中的Variant如果包含的是VarArray,VB能否读出来
      

  2.   

    vb的string和Delphi的string似乎不一样,我试了好多次都不能成功,取出来总是乱码
      

  3.   

    delphi.AnsiString = vb.String
    Delphi.ShortString 是为了保持兼容性而设的一个类型. 若与VB 通讯,不建议使用.
    Delphi.AnsiString 是为了存储 8-bit的 ANSI字符,从它的定以和范围来看,与VB的String是一样的.
    Delphi.WideString 是存储 Unicode 字符的.所以与VB 或其他语言通讯时用它比较好.Delphi.String 其实是一个不确定的通用的类型,在Delphi编译时,会根据编译指令将它转换成上面几个类型中的一种.PChar 就是一个指向字符串的指针,且这个字符串以NULL结尾.
      

  4.   

    调用delphi的 pchar 类参数, 应该就是在VB 的 string 前加个 byval!!!
    我的理解, delphi.widestring = vb.string
      

  5.   

    用PChar就是通用的,winAPI很多就是PChar,或longint都可以
      

  6.   

    ha ha 
    (@ $ @)