【Win|api声明】由于vb.net中的数据类型相对于vb6中的位数已经发生变化,因此在vb6中的api声明已经不适合用于vb.net。比如在vb6的api函数声明中为Long类型的参数在vb.net中应变成integer类型;对于句柄、实例类型有时也声明为intptr类型;而对于vb6中声明为any类型的可以用integer来代替。可以举个例子:
在vb.net中可声明MessageBox函数如下:
DeclareFunctionMessageBoxLib"user32"Alias"MessageBoxA"(hWndAsInteger,txtAsString,captionAsString,TypeAsInteger)AsInteger
而在vb6中的声明为:
PublicDeclareFunctionMessageBoxLib"user32"Alias"MessageBoxA"(ByValhwndAsLong,ByVallpTextAsString,ByVallpCaptionAsString,ByValwTypeAsLong)AsLong