windows programming
lingang_
coding
展开
-
匈牙利命名规范
几年以前,Charles Simonyi(他后来成为微软的著名程序员)设计了一种以前缀为基础的命名方法,这种方法后来称为"匈牙利表示法"以记念他.他的思想是根据每个标识符所代表的含义给它一个前缀.微软后来采用了这个思想,给每个标识符一个前缀以说明它的数据类型.因此,整型变量的前缀是n,长整型变量是nl,字符型数组变量是ca,以及字符串(以空类型结尾的字符数组)以sz为前缀.这些名字可能会非常古怪.转载 2008-05-04 21:44:00 · 1256 阅读 · 1 评论 -
CreateThread与_beginthread的区别
原文地址 http://820808.blog.51cto.com/328558/76160 在写c++代码时,一直牢记着一句话:决不应该调用CreateThread。相反,应该使用Visual C++运行期库函数_beginthreadex。好像CreateThread函数就是老虎,既然这样为什么微软要开发这个函数呢?从网上找到的相关资料,现在汇总一下,在此对相关人员进行感谢转载 2010-05-18 16:29:00 · 1385 阅读 · 0 评论 -
一个时钟程序(c语言)
这几天看完了windows程序设计的GDI部分,贴上一段代码,演示的是一个时钟程序./**////////////////////////////////////////////////////////////////// by tianzhihen #include windows.h>#include "resource.h"#include math.h>LRESULT __stdc原创 2008-05-27 18:39:00 · 4115 阅读 · 0 评论 -
播放波形声音
Win32 API 提供了对播放波形声音的高级支持,指可以使用Win32 API 播放波形声音而不必关心波形声音的细节或者处理内存中的原始声音数据。函数原型如下:BOOL PlaySound(LPCSTR szSound, HMODULE hmod, DWORD dwSound)下面是使用PlaySound函数播放一个波形文件的例子PlaySound("*.wav",NULL,SND_原创 2008-07-31 22:58:00 · 1795 阅读 · 0 评论 -
位图基础
位图应该以一种既定的格式存储在文件中,并被赋予一个以.bmp扩展名结尾的文件名。这个既定的格式依次由下面几种结构组成:BITMAPFILEHEADER结构,BITMAPINFOHEADER结构,BITMAPV4HEADER或者BITMAPV5HEADER 结构。一个包含RGBQUAD结构(也叫调色板)的数组跟随在位图信息头结构之后。调色板之后跟随着一个颜色索引的数组(真实的位图数据原创 2008-07-27 13:44:00 · 767 阅读 · 0 评论 -
CreateFile - Windows API
CreateFile函数详解 CreateFile The CreateFile function creates or opens the following objects and returns a handle that can be used to accessthe object: files pipes mailslots communications resources d原创 2008-07-25 15:14:00 · 2001 阅读 · 1 评论 -
OffsetRect-Windows API
Windows API 每日一练 OffsetRect函数将指定的矩形移动到指定的位置 BOOL OffsetRect( LPRECT lprc, // 矩形 int dx, // 横向偏移 int dy // 纵向偏移); 参数:Lprc:[输入输出]指向一个RECT结构,其中包含原创 2008-07-23 13:54:00 · 952 阅读 · 0 评论 -
线程同步(二)
贴一段代码,线程局部存储举例:#define WIN32_LEAN_AND_MEAN#include stdio.h>#include windows.h>#include process.h>// 利用TLS记录线程的运行时间DWORD g_tlsUsedTime;void InitStartTime();DWORD GetUsedTime();UINT __stdcall Thread原创 2008-05-09 20:14:00 · 577 阅读 · 0 评论 -
线程同步(一)
这里暂且不谈为什么要使线程同步,网上搜一下即可。谈谈如何让线程同步?(一)使用临界区对象。#include stdio.h>#include windows.h>#include process.h>BOOL g_bContinue = TRUE;int g_nCount1 = 0;int g_nCount2 = 0;CRITICAL_SECTION g_cs; // 对存在同步问题的代码原创 2008-05-08 20:37:00 · 506 阅读 · 2 评论 -
由printf()引出的c/c++运行时库问题
在写多线程时写到这么一段代码:#define WIN32_LEAN_AND_MEAN#include stdio.h> #include stdlib.h> #include windows.h> DWORD WINAPI ThreadFunc(LPVOID); void AnotherFunc(void); int main() ...{ HANDLE hThrd;原创 2008-05-08 12:37:00 · 1181 阅读 · 0 评论 -
VC调试入门
概述调试是一个程序员最基本的技能,其重要性甚至超过学习一门语言。不会调试的程序员就意味着他即使会一门语言,却不能编制出任何好的软件。这里我简要的根据自己的经验列出调试中比较常用的技巧,希望对大家有用。本文约定,在选择菜单时,通过/表示分级菜单,例如File/Open表示顶级菜单File的子菜单Open。 设置为了调试一个程序,首先必须使程序中包含调试信息。一般情况下,一个从AppWizard创原创 2008-05-08 11:27:00 · 520 阅读 · 0 评论 -
控制台版内存修改器
还没学MFC ,那就用控制台界面将就一下吧,一个游戏内存修改器。先贴下代码: #include stdio.h>#include windows.h>BOOL FindFirst(DWORD dwValue);// 函数声明 在目标进程空间进行第一次查找BOOL FindNext(DWORD dwValue); // 在目标进程地址空间进行第2、3、4……次查找DWORD g_ar原创 2008-05-05 22:29:00 · 1470 阅读 · 0 评论 -
第一个windows sdk程序
学习VC 我从windows sdk开始学,推荐一本不错的书:王艳平的《Windows 程序设计》第一个sdk程序,写下博客,以示纪念吧 :)功能:打开Windows自带的命令行程序 cmd.exe #include windows.h>#include stdio.h>int main(int argc, char* argv[])...{ char szCommand原创 2008-05-04 21:19:00 · 672 阅读 · 1 评论 -
用GDI+实现BMP位图转JPG位图(及com对象IPicture转jpg)
用GDI+实现BMP位图转JPG位图(及com对象IPicture转jpg)原创 2011-02-15 19:05:00 · 2742 阅读 · 0 评论