“Declare”语句中不支持“As Any”
更新:2007 年 11 月
在 Visual Basic 6.0 和较早版本中,Any 数据类型与 Declare 语句一起使用,以允许使用可能包含任意数据类型的参数。但是,Visual Basic 支持重载,因而使 Any 数据类型过时。
**错误 ID:**BC30828
更正此错误
声明要使用的特定类型的参数;例如:
Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" ( _ ByVal lpBuffer As String, _ ByRef nSize As Integer) _ As Integer
如果调用的过程需要 Void*,请使用 MarshalAsAttribute 属性指定 As Any。
Declare Sub SetData Lib "..\LIB\UnmgdLib.dll" ( _ ByVal x As Short, _ <System.Runtime.InteropServices.MarshalAsAttribute( _ System.Runtime.InteropServices.UnmanagedType.AsAny)> _ ByVal o As Object)