有谁知道在vb6.0里API函数里的数据类型any,在vb.net里声明API函数时用什么类型代替。例如:Private Declare Function HttpQueryInfo Lib "wininet.dll" Alias "HttpQueryInfoA" (ByVal hHttpRequest As Long, ByVal lInfoLevel As Long, ByVal sBuffer As Any, ByRef lBufferLength As Long, ByRef lIndex As Long) As Integer
在vb.net把any改为string,在执行时每次返回false。怎么回事?

解决方案 »

  1.   

    Visual Basic .NET 不支持 Any 关键字。在 Declare 语句中,如果“Option Strict”设置为“On”,必须特别声明每个参数的数据类型和返回值。这将增强类型的安全性。可以重载过程声明来提供各种参数的数据类型。不能只重载返回类型,但可使用参数类型重载使返回类型多样化,或者可将“Option Strict”设置为“Off”。
      

  2.   

    Private Declare Function HttpQueryInfo Lib "wininet.dll" Alias "HttpQueryInfoA" (ByVal hHttpRequest As Long, ByVal lInfoLevel As Long, ByVal sBuffer As Any, ByRef lBufferLength As Long, ByRef lIndex As Long) As Integer
    说的具体点,我在vb6.0里声明这个函数使用正常。但是我在vb.net里怎么使用这个api函数呢?有人知道吗?