VC/MFC
文章平均质量分 76
goodname008
这个作者很懒,什么都没留下…
展开
-
用API播放音频及视频文件
如果想在Windows下播放音频或视频文件,可以使用API函数中的mciSendString实现,非常简单。 源代码如下: /****************************************************************/ /* 超简易媒体播放器 */ /* 作者:原创 2004-07-13 18:05:00 · 6009 阅读 · 1 评论 -
跨进程实现在Tree中快速定位节点
前些日子写软件时,需要实现一个功能,就是在Tree中快速定位节点,比如注册表编辑器左边的Tree,只要给出Tree中的节点路径(以“/”分隔),就可以快速将树展开,并将当前节点定位到指定的节点。功能的实现并不难,但稍有些麻烦。原因在于,如果是本进程中的Tree,只要发消息就可以了,但如果是另外一个进程中的Tree,就要在那个进程中申请内存,将Tree节点的文字复制到这块内存,然后再把这块内原创 2005-04-30 17:47:00 · 4962 阅读 · 2 评论 -
利用底层键盘钩子拦载任意按键(回调版)
前段时间我曾经写过一篇《利用底层键盘钩子屏蔽任意按键》,并放到了我的blog上。这篇文章的题目中把“屏蔽”改成了“拦截”,显然要比以前的版本强一些了。对于以前写的那个DLL,有一个不够理想的地方,就是仅仅能实现屏蔽。如果想在屏蔽之前加入一些“小动作”,就只能修改DLL,在LowLevelKeyboardProc函数中添加代码,实现新的功能。但这样显然不够灵活,这样的DLL也不具备一般性原创 2005-01-18 17:00:00 · 16677 阅读 · 41 评论 -
MFC 4.21 类库结构图
摘自侯杰老师的《深入浅出MFC》简体中文 第二版 (点击放大)原创 2004-09-19 23:29:00 · 3881 阅读 · 5 评论 -
DYNAMIC、DYNCREATE、SERIAL三个宏的图示
摘自侯杰老师的《深入浅出MFC》简体中文 第二版 (点击放大)原创 2004-09-25 01:21:00 · 2634 阅读 · 1 评论 -
VC无负担实现XP风格界面
关于让自己的程序界面实现XP风格这个问题,在网上的讨论很多,大多数的作法都是写一个.manifest文件,然后将文件名改一下,比如.exe文件为test.exe,就将这个.manifest文件改名成test.exe.manifest,并将其和test.exe放在同一个目录里,这样test.exe在XP或2003(必须启动Themes服务)下运行时就会呈现XP界面风格。有件事情必须说一下,按照上原创 2004-08-20 23:34:00 · 8585 阅读 · 16 评论 -
利用底层键盘钩子屏蔽任意按键
很多人都知道,如果想在系统范围内屏蔽键盘上的任意按键需要使用全局键盘钩子,然而像win键这样“倔强”的按键又不是普通的键盘钩子就能搞定的。这里我提供一种利用底层键盘钩子屏蔽任意按键(包括win键)的方法,并且作成了.dll动态链接库,方便以后使用。钩子,是一种相对复杂一点的技术,通常用来监视系统中某一类型的事件,这些事件可以与某一线程相关(线程钩子),也可以是系统中的所有线程(全局钩子)原创 2004-08-21 14:44:00 · 18153 阅读 · 42 评论 -
剖析VC++函数调用约定
Visual C/C++ 的编译器提供了几种函数调用约定,了解这些函数调用约定的含义及它们之间的区别可以帮助我们更好地调试程序。在这篇文章里,我就和大家共同探讨一些关于函数调用约定的内容。 Visual C/C++ 的编译器支持如下的函数调用约定: 关键字 清理堆栈 参数入栈顺序 函数名称修饰(C) __cdecl 调用函数 右 à 左 _函数名 __s原创 2004-07-24 15:39:00 · 11840 阅读 · 21 评论 -
Win32 函数原型
Win32函数原型分为普通、ANSI和Unicode三种。其实如果严格地说,并不能有普通这种分法,也就是只有ANSI和Unicode这两种。普通,一般都是MSDN开发文档中直接给出的形式。比如,下面是SetWindowText的普通原型: BOOL SetWindowText(HWND hwnd, LPCTSTR lpText); 实际上,包含SetWindowText函数声明的头原创 2004-07-14 01:23:00 · 3149 阅读 · 3 评论 -
利用HTTP协议实现文件下载的多线程断点续传
最近研究了一下关于文件下载的相关内容,觉得还是写些东西记下来比较好。起初只是想研究研究,但后来发现写个可重用性比较高的模块还是很有必要的,我想这也是大多数开发人员的习惯吧。 对于HTTP协议,向服务器请求某个文件时,只要发送类似如下的请求即可: GET /Path/FileName HTTP/1.0 Ho原创 2006-01-02 17:03:00 · 18996 阅读 · 16 评论