其实Windows中的API,就相当于当年DOS系统中的系统功能调用,及中断21。只不过在数量上和功能上,都是DOS系统功能调用所不及的。
如果你还是看不明白,那我不怪你,可能是我讲的不清楚,所以,还是给你推荐老牛写的书吧。力推《Windows程序设计》,看过之后你会内力大增的,那时候你所知道的知识就不止是API而以了。
其实话说回来,我这篇文章不是教你编程的,所以关于Windows程序的原理,没有必要说那么多,我之所以跟你讲API,是想让你知道Windows程序的运行机制。免的到时候用调试器下断点的时候问什么是API。(众人(十分愤怒地)冲上台来:“拉下去PK!把我们当什么了!”)
(我再次来到台上,镜头切向脸的一侧,来个特写。只见上面有若干处大小不同的伤口)可能还有些重点的地方我没有提到,欢迎指正。如果你有什么不明白的地方,欢迎跟贴提问。只要别太那个,比如说“你能把所有的API给我列出来让我回去背背好吗?”
附上几个常用的API函数吧。相信你此时因该以经对API有个大概的了解了。
MessageBox 显示一信息对话框
MessageBoxEx 显示一信息对话框
MessageBoxIndirect 显示一定制信息对话框
(以上这三个,可以用来中断那些错误提示,比如说你注册码输入错误了,程序就可能通过这几个函数中的一个,来提示你错误)
GetDlgItemInt 得指定输入框整数值
GetDlgItemText 得指定输入框输入字符串
GetDlgItemTextA 得指定输入框输入字符串
(软件可以用这三个来得到用户输入的注册码)
GetLocalTime 得当前本地时间
GetSystemTime 得当前系统时间
(软件可以用这两个来判断软件是否过期)
RegQueryvalueA 获取一个项的设置值
RegQueryvalueExA 获取一个项的设置值
RegSetvalueA 设置指定项或子项的值
RegSetvalueExA 设置指定项的值
(如果软件用注册表存储注册信息的话,那么这几个也许会有用)
上面讲的,只是几个平时比较常见的,更多请参见看雪以前的教程或Windows开发人员手册。
最后,我们还要隆重介绍一个重量级函数,你可能不知道API是什么,但你只要用过调试器,就一定知道它的名字。你可以不知道美国现任的总统是谁,但是你一定要知道这个函数。我虽然知道现任美国总统是鲍威尔 但我同时也知道这个函数是谁。
它就是----吴孟达!(导演:NG)重新说。它就是hmemcpy。
这个函数是干什么的?
它是一个非常简单的函数。只完成一项非常非常基本的任务,就是把数据从一个地方复制到另一个地方。应用程序本身并不调用它,理由很简单,它很低级(汇编:谁敢说跟我一样?)。但是大部分API函数却非常频繁地调用它。所以,它也叫万能函数。平时你可能都不知道有这么个东西,但是断起程序来却非常管用。但目前到了2K跟Xp下,却没有这个函数了,与之相应的是一个叫memcpy的函数,虽然功能与其相同,但是基本上已经是个废人了 总知,你用memcpy根本就断不下什么来。所以,这么一个好使的函数只能在98下使用了。这就像美国的总统一样,再好使也只能使八年,不好使的就别说了。说不定明年就把他踢飞
别的我也不多说什么了,这章你就知道API是什么就成了。
如果你觉的有什么不妥的地方或有什么问题,并且想文明一点地表代出来的话,就请在回复。如果想野蛮一点的话,就拿鸡蛋往你显示器上丢吧
|