首页 新闻 赞助 找找看

WINDOWS API 如何确定所使用的函数,需要声明哪些常量?

0
悬赏园豆:10 [已解决问题] 解决于 2021-12-03 19:17

如题.
刚接触WINDOWS API,主要是在VB中使用,自学的,问的问题可能有点不聪明,望各位大神指点一下,谢谢

一曲轻扬的主页 一曲轻扬 | 菜鸟二级 | 园豆:401
提问于:2021-12-02 15:57
< >
分享
最佳答案
1

如果用WinAPI的话,如果逻辑不复杂建议直接用C/C++,因为有头文件,里面定义了很多信息,比如结构体、所谓的常量,使用起来相当的方便。不同的API是不一样的,用到的常量符号也是不一样的。刚开始接触API你可能不懂,随着深入的了解,你会明白的,我也是从接触VB这我的第一门编程语言过来的。

收获园豆:10
寂静的羽夏 | 小虾三级 |园豆:1781 | 2021-12-02 19:55

谢谢指点.
可是我不会C/C++语言,我看网上的视频大多是用C/C++来举例,对于我只会点VB语言的菜鸟来说,真的是太不友好了

一曲轻扬 | 园豆:401 (菜鸟二级) | 2021-12-03 14:22

@甘之不甘!: 确实这样,不过要想学明白这些东西,C/C++这个东西是跑不掉的,我好久不用VB了,我记着有一个固定的格式声明就能引入API,然后你查查MSDN,然后看看每一个参数的意义。里面有一些VB可能没有的东西,比如结构体和宏,而定义常量往往是宏声明的,如果在C/C++里面,引用头文件都有了,但是VB不行,它没这些东西,都需要在代码中补充,补充声明常量是为了代码的可读性,结构体往往是必需品。

寂静的羽夏 | 园豆:1781 (小虾三级) | 2021-12-03 14:38

@甘之不甘!: 如果想要彻底明白里面声明的东西,你目前的知识又是不够了,你需要理解Windows是怎样实现它的,为什么这么实现。比如我看到你前面的回复,WS_MINIMIZEBOX就是一个宏,在VB看来它就是一个常量,它的含义就是指有最小化按钮的样式。这些东西,不是一时半会儿就能搞明白的,没有老师的话可能需要一两年的自学和积淀。

寂静的羽夏 | 园豆:1781 (小虾三级) | 2021-12-03 14:43
其他回答(2)
1

Hi,最好具体弄个API来看看,一般来说,常量是不需要声明的

wang_yb | 园豆:4891 (老鸟四级) | 2021-12-02 16:43

谢谢回复.

支持(0) 反对(0) 一曲轻扬 | 园豆:401 (菜鸟二级) | 2021-12-03 14:28

我现在也就学会了几个函数,但是看到别人的例子,上来就是一串常量声明,我比较疑惑:他是怎么知道要声明这些常量的.并且这些常量的名字还挺不好记的.
比如GetWindowLong/SetWindowLong,书上就声明了五行常量:
Private Const WS_SYSMENU = &H80000
Private Const WS_MINIMIZEBOX = &H20000
Private Const WS_MAXIMIZEBOX = &H10000
Private Const WS_CAPTION = &HC00000
Private Const GWL_STYLE = (-16)
我完全看不懂

支持(0) 反对(0) 一曲轻扬 | 园豆:401 (菜鸟二级) | 2021-12-03 14:35
0

一般来说,常用的Win32 Api没多少,用的时候现查就行。
至于你说的那些常量,都是从Win32编程时约定俗成的,本身就是个数值。
可以使用这个网站,可以非常方便的查看win32 api的用法,包括那些常量什么的。
http://www.pinvoke.net/

leslie_xin | 园豆:404 (菜鸟二级) | 2021-12-03 14:59
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册