VB中API的声明特殊问题

2016-02-19 21:45 14 1 收藏

下面,图老师小编带您去了解一下VB中API的声明特殊问题,生活就是不断的发现新事物,get新技能~

【 tulaoshi.com - 编程语言 】

  我在调用api时,发现了下面了几个问题:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  1.SystemParameterInfo
vb的api声明工具中第三个参数为 ByRef lpvParam as any.
  但若想用来更改桌面壁纸时必须声明为ByVal lpvParam as any.

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  2.SendMessage
  当声明为Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

  发送SendMessage(me.hwnd,&h112,&hF140,0)为开始屏幕保护,而当第四个参数声明为ByVal lParam as any则为待机对话框。上述在Win98可以,而在Win2000中已避免了。

来源:http://www.tulaoshi.com/n/20160219/1627083.html

延伸阅读
标签: vb
对于每个需要引用的API函数,我们需要先在程序中说明,如果只在某一窗体内声明并使用它,则把它声明为Private,而如果在模块中声明,且需要在整个工程内使用它,则需要把它声明为Public。 Public Declare Function CallWindowProc& Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc&, ByVal hWnd&, ByVal Msg&, ByVal wParam...
错误信息: Microsoft VBScript 编译器错误 错误 '800a03f6' 缺少 'End' /iisHelp/common/500-100.asp,行242 OfficeOpt 错误 '800a9c68' 定义的应用程序或对象错误 /officeopt.asp,行13 解决方法:在发布目录上点击右键选择〔属性〕,在面板中选择〔安全〕,然后为《Everyone》添加《写入》权限。
标签: ASP
       any       有些消息的参数声明为any.这表示该参数是一种可变的类型(你可以以整型,字符串,用户自定义或其他的类型来传递).      这有一个这样的例子:      public declare function sendmessage lib "user32" alias "sendmessagea...
对于Windows平台,显示器的分辩率和颜色数很重要,尤其是对于多媒体应用软件和游戏软件。但许多情况下,用户当前的屏幕设置并不适合软件的运行需要。软件通常的做法是提示用户将屏幕设置到软件要求的分辩率及颜色数,再重新启动软件。这样无疑会增加普通用户操作上的负担和困难,降低了软件的友好性和易用性。 ----理想的作法是:在软件开始...
在VB中用API实现多媒体主要是调用Windows的mmsystem.dll库。以下为调用API的声明(这些代码放在程序的声明部分中): 1.′播放CD和AVI所需要的声明。 DeclareFunctionmciSendStringLib″MMSYSTEM″(ByVal lpstrCommandasString,ByVallpstrReturnStrasAny,By ValwRetumLenasInteger,ByValhCallBackasInteger)as Long ...

经验教程

653

收藏

13
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部