Windows程序设计
_acme_
这个作者很懒,什么都没留下…
展开
-
如何在Windows编程中快速定位BUG
应该好多新手刚学Windows的时候都会觉得找BUG很难,因为太多的代码,太多的句柄和API函数了.这很正常,因为windows编程中有太多的新概念,对于刚学完C或者没学过C的人确实需要一段时间去熟悉里面的规则.这里我分享一下怎么样快速的定位BUG.大家学Windows编程肯定会用到MSDN帮助文档吧(推荐英文版的)?我估计大家看函数参数介绍的时候很少会去看返回值,我觉得返回值挺重要的,它能帮助你快原创 2016-01-20 16:32:24 · 1171 阅读 · 0 评论 -
怎么扫描空文件夹
其思路就是递归查找文件,然后判断文件夹中有无文件,如果没有文件则是空的文件夹。效果如图: 实现代码如下:int SearchFile(TCHAR* szPath,std::vector<std::string>& PathName){ int iFileCount = 0; //文件夹中的文件个数 WIN32_FIND_DATA windata = {原创 2016-05-05 13:18:14 · 1370 阅读 · 0 评论 -
如何递归遍历磁盘文件
遍历磁盘文件的API为FindFirstFile和FindNextFile 其原型如下://INVALID_HANDLE_VALUE 表示失败HANDLE FindFirstFile( LPCTSTR lpFileName, //文件路径 LPWIN32_FIND_DATA lpFindFileData //文件信息结构);//返回非0表示成功,0表示失败BOOL Fin原创 2016-05-04 10:43:36 · 1028 阅读 · 0 评论 -
WindowsAPI自绘按钮
自绘按钮有多种方法,比如创建一个BS_OWNERDRAW风格的按钮,然后就可以自绘了,但是这个好像不能用SetWindowRgn画各种形状。我介绍的这个方法很简单,但是代码量会稍多一点。就是把一个按钮当做一个单独的窗口来处理,但是这就必须要每个按钮都要注册一个类,所以代码会多一点。总体的思路是:注册主窗口类并创建主窗口–>注册子窗口类并创建子窗口(就是按钮)–>实现各自的窗口过程–>处理对应的消息.原创 2016-05-01 14:50:58 · 4727 阅读 · 0 评论 -
怎样获取别的程序图标句柄
有很多种方法,但是如果只是单一的使用某种方法就可能会出现获取某些软件的图标失败的情况.所以这里介绍两种方法混合使用.代码如下:#include <windows.h>LRESULT CALLBACK WinProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);int WINAPI WinMain(_In_ HINSTANCE hIn原创 2016-04-13 13:03:40 · 1868 阅读 · 0 评论 -
贪吃蛇详解Windows编程(四)
控制区的代码就不详细讲解了,自己看看就能明白,并没有什么难点。如果有兴趣的画还可以把界面做好一点,把功能做丰富一点。但是我觉得点到为止就行了。我用的是Win32空项目写的,你也可以用自动生成的代码写,但是我觉得那个太乱代码太多。 接下来是全部的代码:#include <windows.h>#include <vector>#include <time.h>//游戏区和控制区宽度高度#def原创 2015-12-27 15:50:36 · 3058 阅读 · 18 评论 -
贪吃蛇详解Windows编程(三)
蛇已经动起来了,接下来就是吃食物,身体变长!4.制作食物 分为两步,设定食物坐标,画出食物 4.1设定食物坐标POINT ptFood = { 20,20 };//初始化食物坐标//[其他代码]//初始化蛇VOID InitSnake(){ //先清空坐标 vSnakePoint.clear(); //给蛇坐标分配空间 vSnakePoint.resize原创 2015-12-27 15:24:29 · 1673 阅读 · 0 评论 -
贪吃蛇详解Windows编程(二)
终于可以让蛇动起来了,想想还有点小激动呢!哈哈,我们继续!3.让蛇动起来首先你得先创建一个定时器吧,然后我们先让蛇默认只往一个方向移动先,不要着急想着键盘控制那么快,只要一个方向能动,其它方向你还怕动不了? 代码片段如下:#define SNAKESPEED 500 //初始化蛇的速度为500ms#define TIMERID_1 1 //定原创 2015-12-27 15:06:53 · 2219 阅读 · 4 评论 -
贪吃蛇详解Windows编程(一)
贪吃蛇可以用很多种语言写,但是基本的思路都是一样的,在这里我就用C/C++写,但不是纯C或者纯C++写,因为那样太没效率了,用Windows封装的API写会节省很多代码而且是有界面的。既然是详解,所以一篇文章肯定讲不完的,所以我会分开几篇讲。一个小建议:如果只有C或C++基础而没学过Windows程序设计,那么只建议看看思路即可,如果简单的学过一些Windows可以看完全篇.先说一下思路,不管做什么原创 2015-12-27 14:23:48 · 9592 阅读 · 2 评论 -
使用ReadFile程序崩溃的原因
在使用这个函数的时候,很多人都不会特意的去看MSDN文档后面的Remarks解释,所以可能有时候会出问题,而且不知道出在哪里。这两个函数的其它参数就不详细解释了,就说说lpNumberOfBytesRead这个参数。MSDN原文:When a read operation reaches the end of a file, this function returns TRUE and sets *原创 2017-06-12 22:56:31 · 3896 阅读 · 0 评论