<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<atom:link href="http://itecfun.com/extern.php?action=feed&amp;tid=3165&amp;type=rss" rel="self" type="application/rss+xml" />
		<title><![CDATA[个人知识管理站 / Windows API 摘记]]></title>
		<link>http://www.itecfun.com/viewtopic.php?id=3165</link>
		<description><![CDATA[Windows API 摘记 最近发表的帖子。]]></description>
		<lastBuildDate>Wed, 17 Jun 2015 09:50:44 +0000</lastBuildDate>
		<generator>FluxBB</generator>
		<item>
			<title><![CDATA[Re: Windows API 摘记]]></title>
			<link>http://www.itecfun.com/viewtopic.php?pid=3322#p3322</link>
			<description><![CDATA[<p><strong>虚拟键代码</strong><br />&#160; 虚拟键代码存储在WM_KEYDOWN、WM_KEYUP、WM_SYSKEYDOWN、WM_SYSKEYUP消息的wParam参数中, 常用的虚拟键代码如下:</p><p>常用的虚拟键代码如下:</p><p>十进制&#160; &#160; 十六进制&#160; &#160; &#160; &#160; WINUSER.H中的标识符&#160; &#160; &#160; &#160; 是否必须&#160; &#160; &#160; &#160; IBM兼容键盘&#160; &#160;&#160; &#160; &#160;&#160; <br />1&#160; &#160; &#160; &#160; &#160; &#160; 1&#160; &#160; &#160; &#160; VK_LBUTTON&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 鼠标左键&#160; &#160;&#160; &#160; &#160;&#160; <br />2&#160; &#160; &#160; &#160; &#160; &#160; 2&#160; &#160; &#160; &#160; VK_RBUTTON&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 鼠标右键&#160; &#160;&#160; &#160; &#160;&#160; <br />3&#160; &#160; &#160; &#160; &#160; &#160; 3&#160; &#160; &#160; &#160; VK_CANCEL&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; Ctrl + Break&#160; &#160;&#160; &#160; &#160;&#160; <br />4&#160; &#160; &#160; &#160; &#160; &#160; 4&#160; &#160; &#160; &#160; VK_MBUTTON&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 鼠标中键&#160; &#160;&#160; &#160; &#160;&#160; <br />8&#160; &#160; &#160; &#160; &#160; &#160; 8&#160; &#160; &#160; &#160; VK_BACK&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; 退格键&#160; &#160;&#160; &#160; &#160;&#160; <br />9&#160; &#160; &#160; &#160; &#160; &#160; 9&#160; &#160; &#160; &#160; VK_TAB&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; Tab键&#160; &#160;&#160; &#160; &#160;&#160; <br />12&#160; &#160; &#160; &#160; &#160; &#160; C&#160; &#160; &#160; &#160; VK_CLEAR&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; Clear键&#160; &#160;&#160; &#160; &#160;&#160; <br />13&#160; &#160; &#160; &#160; &#160; &#160; D&#160; &#160; &#160; &#160; VK_RETURN&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; 回车键(任意一个)&#160; &#160;&#160; &#160; &#160;&#160; <br />16&#160; &#160; &#160; &#160; &#160; &#160; 10&#160; &#160; &#160; &#160; VK_SHIFT&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; Shift键(任意一个)&#160; &#160;&#160; &#160; &#160;&#160; <br />17&#160; &#160; &#160; &#160; &#160; &#160; 11&#160; &#160; &#160; &#160; VK_CONTROL&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; Ctr键(任意一个)&#160; &#160;&#160; &#160; &#160;&#160; <br />18&#160; &#160; &#160; &#160; &#160; &#160; 12&#160; &#160; &#160; &#160; VK_MENU&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; Alt键(任意一个)&#160; &#160;&#160; &#160; &#160;&#160; <br />19&#160; &#160; &#160; &#160; &#160; &#160; 13&#160; &#160; &#160; &#160; VK_PAUSE&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160;&#160; &#160; &#160; Pause键&#160; &#160;&#160; &#160; &#160;&#160; <br />20&#160; &#160; &#160; &#160; &#160; &#160; 14&#160; &#160; &#160; &#160; VK_CAPITAL&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; 大写锁定键&#160; &#160;&#160; &#160; &#160;&#160; <br />27&#160; &#160; &#160; &#160; &#160; &#160; 1B&#160; &#160; &#160; &#160; VK_ESCAPE&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; Esc键&#160; &#160;&#160; &#160; &#160;&#160; <br />32&#160; &#160; &#160; &#160; &#160; &#160; 20&#160; &#160; &#160; &#160; VK_SPACE&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; 空格键&#160; &#160;&#160; &#160; &#160;&#160; <br />33&#160; &#160; &#160; &#160; &#160; &#160; 21&#160; &#160; &#160; &#160; VK_PRIOR&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; PageUp键&#160; &#160;&#160; &#160; &#160;&#160; <br />34&#160; &#160; &#160; &#160; &#160; &#160; 22&#160; &#160; &#160; &#160; VK_NEXT&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; PageDown键&#160; &#160;&#160; &#160; &#160;&#160; <br />35&#160; &#160; &#160; &#160; &#160; &#160; 23&#160; &#160; &#160; &#160; VK_END&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; End键&#160; &#160;&#160; &#160; &#160;&#160; <br />36&#160; &#160; &#160; &#160; &#160; &#160; 24&#160; &#160; &#160; &#160; VK_HOME&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; HOME键&#160; &#160;&#160; &#160; &#160;&#160; <br />37&#160; &#160; &#160; &#160; &#160; &#160; 25&#160; &#160; &#160; &#160; VK_LEFT&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; 左箭头&#160; &#160;&#160; &#160; &#160;&#160; <br />38&#160; &#160; &#160; &#160; &#160; &#160; 26&#160; &#160; &#160; &#160; VK_UP&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; 上箭头&#160; &#160;&#160; &#160; &#160;&#160; <br />39&#160; &#160; &#160; &#160; &#160; &#160; 27&#160; &#160; &#160; &#160; VK_RIGHT&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; 右键头&#160; &#160;&#160; &#160; &#160;&#160; <br />40&#160; &#160; &#160; &#160; &#160; &#160; 28&#160; &#160; &#160; &#160; VK_DOWN&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; 下箭头&#160; &#160;&#160; &#160; &#160;&#160; <br />41&#160; &#160; &#160; &#160; &#160; &#160; 29&#160; &#160; &#160; &#160; VK_SELECT&#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; <br />42&#160; &#160; &#160; &#160; &#160; &#160; 2A&#160; &#160; &#160; &#160; VK_PAINT&#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; <br />43&#160; &#160; &#160; &#160; &#160; &#160; 2B&#160; &#160; &#160; &#160; VK_EXECUTE&#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; <br />44&#160; &#160; &#160; &#160; &#160; &#160; 2C&#160; &#160; &#160; &#160; VK_SNAPSHOT&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; Paint Screen键&#160; &#160;&#160; &#160; &#160;&#160; <br />45&#160; &#160; &#160; &#160; &#160; &#160; 2D&#160; &#160; &#160; &#160; VK_INSERT&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; Insert键&#160; &#160;&#160; &#160; &#160;&#160; <br />46&#160; &#160; &#160; &#160; &#160; &#160; 2E&#160; &#160; &#160; &#160; VK_DELETE&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; Del键&#160; &#160;&#160; &#160; &#160;&#160; <br />47&#160; &#160; &#160; &#160; &#160; &#160; 2F&#160; &#160; &#160; &#160; VK_HELP&#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; <br />48 - 57&#160; &#160; &#160; &#160; 30 - 39&#160; &#160; 无&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; 主键盘上的0到9&#160; &#160;&#160; &#160; &#160;&#160; <br />65 - 90&#160; &#160; &#160; &#160; 41 - 5A&#160; &#160; 无&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; A - Z&#160; &#160;&#160; &#160; &#160;&#160; <br />91&#160; &#160; &#160; &#160; &#160; &#160; 5B&#160; &#160; &#160; &#160; VK_LWIN&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160;&#160; &#160; &#160; 左Windows键&#160; &#160;&#160; &#160; &#160;&#160; <br />92&#160; &#160; &#160; &#160; &#160; &#160; 5C&#160; &#160; &#160; &#160; VK_RWIN&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 右Windows键&#160; &#160;&#160; &#160; &#160;&#160; <br />93&#160; &#160; &#160; &#160; &#160; &#160; 5D&#160; &#160; &#160; &#160; VK_APPS&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; Applicatin键&#160; &#160;&#160; &#160; &#160;&#160; <br /> &#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; <br />96 - 105&#160; &#160; 60 - 69&#160; &#160; VK_NUMPAD0 - VK_NUMPAD9&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; 小键盘区的0 - 9&#160; &#160;&#160; &#160; &#160;&#160; <br />106&#160; &#160; &#160; &#160; &#160; &#160; 6A&#160; &#160; &#160; &#160; VK_MULTIPLY&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 小键盘区的*&#160; &#160;&#160; &#160; &#160;&#160; <br />107&#160; &#160; &#160; &#160; &#160; &#160; 6B&#160; &#160; &#160; &#160; VK_ADD&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 小键盘区的+&#160; &#160;&#160; &#160; &#160;&#160; <br />108&#160; &#160; &#160; &#160; &#160; &#160; 6C&#160; &#160; &#160; &#160; VK_SEPARATOR&#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; &#160; &#160;&#160; <br />109&#160; &#160; &#160; &#160; &#160; &#160; 6D&#160; &#160; &#160; &#160; VK_SUBTRACT&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 小键盘区的-&#160; &#160;&#160; &#160; &#160;&#160; <br />110&#160; &#160; &#160; &#160; &#160; &#160; 6E&#160; &#160; &#160; &#160; VK_DECIMAL&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 小键盘区的.&#160; &#160;&#160; &#160; &#160;&#160; <br />111&#160; &#160; &#160; &#160; &#160; &#160; 6F&#160; &#160; &#160; &#160; VK_DIVIDE&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 小键盘区的/&#160; &#160;&#160; &#160; &#160;&#160; <br />112 - 121&#160; &#160; 70 - 79&#160; &#160; VK_F1 - VK_F10&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; √&#160; &#160; &#160; &#160; 功能键F1 - F10&#160; &#160;&#160; &#160; &#160;&#160; <br />122 - 135&#160; &#160; 7A- 79&#160; &#160; VK_F11 - VK_F24&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 功能键F11 - F24&#160; &#160;&#160; &#160; &#160;&#160; <br />144&#160; &#160; &#160; &#160; &#160; &#160; 90&#160; &#160; &#160; &#160; VK_NUMLOCK&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 数字锁定键&#160; &#160;&#160; &#160; &#160;&#160; <br />145&#160; &#160; &#160; &#160; &#160; &#160; 91&#160; &#160; &#160; &#160; VK_SCROLL&#160; &#160;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; Scroll Lock键</p>]]></description>
			<author><![CDATA[dummy@example.com (xuyg)]]></author>
			<pubDate>Wed, 17 Jun 2015 09:50:44 +0000</pubDate>
			<guid>http://www.itecfun.com/viewtopic.php?pid=3322#p3322</guid>
		</item>
		<item>
			<title><![CDATA[Windows API 摘记]]></title>
			<link>http://www.itecfun.com/viewtopic.php?pid=3321#p3321</link>
			<description><![CDATA[<p><strong>大写标识符说明 </strong></p><p>CS_HREDRAW</p><p>CS_VREDRAW</p><p>IDI_APPLICATION</p><p>IDC_ARROW</p><p>MB_OK</p><p>MB_ICONERROR</p><p>WS_OVERLAPPEDWINDOW</p><p>CW_USEDEFAULT</p><p>DT_SINGLELINE</p><p>DT_CENTER</p><p>DT_VCENTER</p><p>WM_CREATE</p><p>WM_PAINT</p><p>WM_LBUTTONDOWN</p><p>WM_DESTROY </p><p>这些标识符均为数值常量, 在WINUSER.H头文件中有定义, 该程序中用到的一些标识符前缀含义为:<br /><strong>前缀&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 含义</strong></p><p>CS_ &#160; &#160; &#160; &#160; &#160; &#160; 类风格选项</p><p>CW_&#160; &#160; &#160; &#160; &#160; &#160; 创建窗口选项</p><p>DT_&#160; &#160; &#160; &#160; &#160; &#160; 文本绘制选项</p><p>IDI_&#160; &#160; &#160; &#160; &#160; &#160; 图标的ID号</p><p>IDC_&#160; &#160; &#160; &#160; &#160; &#160; 光标的ID号</p><p>MB_&#160; &#160; &#160; &#160; &#160; &#160; 消息框选项</p><p>WM_&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160;窗口消息</p><p>WS_&#160; &#160; &#160; &#160; &#160; &#160; 窗口风格<br /><strong><br />句柄</strong></p><p>&#160; 不同类型的句柄有不同的标识符, 在我们尝试创建窗口的代码中用到的句柄有:</p><p>标识符&#160; &#160; &#160; &#160; &#160; &#160; 含义</p><p>HINSTANCE&#160; &#160; &#160; &#160; 实例句柄, 指程序本身</p><p>HWND&#160; &#160; &#160; &#160; &#160; &#160; 窗口句柄</p><p>HDC&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; 设备环境句柄</p><p>HBRUSH&#160; &#160; &#160; &#160; &#160; &#160; 图形画刷句柄</p><p>句柄是一个标识符，用来来标识对象, 一个句柄使用四个字节长的整数来存储一个整数值, 这个具体的整数值实际上我们并不需要知道是多少, 我们要做的就是传递句柄, Windows会知道如果用过这个句柄找到并以引用相应的对象。<br /><strong><br />经常使用的匈牙利命名的前缀如下:<br />前缀&#160; &#160; &#160; &#160; 含义描述</strong><br />p&#160; &#160; &#160; &#160; &#160; &#160; 指针<br />fn&#160; &#160; &#160; &#160; &#160; &#160; 函数<br />v &#160; &#160; &#160; &#160; &#160; &#160; 无效<br />h&#160; &#160; &#160; &#160; &#160; &#160; 句柄<br />l&#160; &#160; &#160; &#160; &#160; &#160; 长整形<br />b&#160; &#160; &#160; &#160; &#160; &#160; 布尔型<br />f&#160; &#160; &#160; &#160; &#160; &#160; 浮点型<br />dw&#160; &#160; &#160; &#160; &#160; &#160; 双字<br />sz&#160; &#160; &#160; &#160; &#160; &#160; 字符串<br />n&#160; &#160; &#160; &#160; &#160; &#160; 短整型<br />d&#160; &#160; &#160; &#160; &#160; &#160; 双精度浮点型<br />c&#160; &#160; &#160; &#160; &#160; &#160; 计数, 通常写为cnt<br />ch&#160; &#160; &#160; &#160; &#160; &#160; 字符, 通常写为c<br />i&#160; &#160; &#160; &#160; &#160; &#160; 整型<br />by&#160; &#160; &#160; &#160; &#160; &#160; 字节<br />w&#160; &#160; &#160; &#160; &#160; &#160; 字型<br />r&#160; &#160; &#160; &#160; &#160; &#160; 实型<br />u&#160; &#160; &#160; &#160; &#160; &#160; 无符号型<br />例如<br />szCmdLine, 通过变量名我们就可以知道这是一个&quot;以0结束的字符串&quot;; </p><p>hInstance, 以h开头, 代表一个句柄;</p><p>iCmdShow, 以i开头, 代表一个int整形。</p>]]></description>
			<author><![CDATA[dummy@example.com (xuyg)]]></author>
			<pubDate>Wed, 17 Jun 2015 02:05:38 +0000</pubDate>
			<guid>http://www.itecfun.com/viewtopic.php?pid=3321#p3321</guid>
		</item>
	</channel>
</rss>
