Welcome 微信登录

首页 / 软件开发 / C++

Windows中如何获取键盘和鼠标处于空闲状态的时间

Windows中如何获取键盘和鼠标处于空闲状态的时间

Windows中如何获取键盘和鼠标处于空闲状态的时间2009-11-11赵湘宁在编写程序的过程中,我遇到了这样的需求:在基于Windows 9x 或 Windows NT4.0 的程序中,要求确定键盘、鼠标处于空闲状态的时间。查询了有关资料文档以后,发现Windows 9x和Windows NT4.0 没有提供API或系统调用来实现这样的功能。但是,在Windows 2000中提供了一个新的函数:GetLastInputInfo(),这个函数使用结构 LA...
Windows中回收站(Recycle Bin)的存取方法

Windows中回收站(Recycle Bin)的存取方法

Windows中回收站(Recycle Bin)的存取方法2009-11-11赵湘宁问题:我想用CFile::Remove(或其它可行的方法)删除一个文件,但是只是想将它送到Recycle Bin里面,而不是永久性地删除它,这样我的用户就可以在必要的时候能恢复这个文件。我不通过编程能不能实现?如果必须编程,那如何在程序中存取Recycle Bin?解答:这个问题的答案是:外壳API函数——SHFileOperation,它定义在sh...
C++网络开发包ACE环境的配置与调试

C++网络开发包ACE环境的配置与调试

C++网络开发包ACE环境的配置与调试2010-01-09ACE是个很有用的开放源代码的C++网络编程开发包,利用它比直接用API更有利于代码的健壮性,可移植性,并相对简单。估计大家刚接触ACE时,都有一定难度,说不定就半途放弃了,这是我学ACE两天中的总结,基本上不成文,但我想研究到ACE的你一定会明白下文的意思。我的系统环境是:Win2k pro(sp4)、VC6.0 (sp5)过一阵,我的主页上要开论坛,并设VC专区,欢迎大家上去交流www.liuf...
QQ静态截图完善实现之改造CRectTracker类

QQ静态截图完善实现之改造CRectTracker类

QQ静态截图完善实现之改造CRectTracker类2010-01-09 VC知识库 姜紫梁由于前次写的代码过于仓促(相关文章参见:“QQ 静态截图程序模拟实现”),还没仔细修改就投稿了,在这里向大家表示道歉,可能你觉得这种程序不值的一看,但我本着精益求精的态度,还是把它完善了一下,更重要的是深入了解CRectTracer类的内部机制,以能更灵活和使用该类 ,在此我把MFC的CRectTracker类源码,提取出来做了小小的改造,有...
创建“通用的”动态链接库(DLL)

创建“通用的”动态链接库(DLL)

创建“通用的”动态链接库(DLL)2010-01-09最近有许多人问如何让动态链接库的输出函数能够被任何支持动态链接库的语言调用。写动态链接库是很EASY的事情。但是,他们大多觉得输出的名字有乱字符(如:_vbShiftRight@1)。我想在这里就讨论一下如何让输出函数的名字中不出现乱子符。首先,除非你绝对需要使用C++编码,否则我还是推荐使用C来写DLL。这里我想让创建的DLL可以在VB中使用。你需要实现自己DLL的入口点函数和保证代码使用stdcal...
创建分层窗口,实现图像渐变

创建分层窗口,实现图像渐变

创建分层窗口,实现图像渐变2010-01-09Paul DiLascia有没有方法创建一个半透明的窗口,并将该窗口上发生的所有鼠标事件都传递到桌面或另一个应用窗口处理?当然可以,并且相当容易。你只要创建一个“分层窗口”即可。我写了一个 小程序叫 lwtest 来示范如何做。你可以下载源代码。为了创建分层窗口,你需要扩展式样 WS_EX_LAYERED,此外,为了能在透明窗口上进行鼠标点击,你还需要 WS_EX_TRANSPARENT...
代码格式化脚本CodeFormat

代码格式化脚本CodeFormat

代码格式化脚本CodeFormat2010-01-09没学过VBSript,但为了格式化自己要用的代码,找来找去没找到合适的,勉强作了一个。用法:将下面代码存成一个“.DSM”后缀的文件,用VC6装载这个宏,打开任一C,C++代码文件,运行宏,代码将按系统设置的方式(空格或TAB)得到格式化。由于不懂VBSript,做得不完善,问题是:1:必须把欲格式化的文件在VC等环境下打开,不能按目录自动检索该格式化的文件;2:在“...
点对点多线程断点续传的实现

点对点多线程断点续传的实现

点对点多线程断点续传的实现2010-01-09赵明在如今的网络应用中,文件的传送是重要的功能之一,也是共享的基础。一些重要的协议像HTTP, FTP等都支持文件的传送。尤其是FTP,它的全称就是“文件传送协议”,当初的工程师设计 这一协议就是为了解决网络间的文件传送问题,而且以其稳定,高速,简单而一直保持着很大的生命力 。作为一个程序员,使用这些现有的协议传送文件相当简单,不过,它们只适用于服务器模式中。这样 ,当我们想在点与点之间...
教你如何作弊玩扫雷

教你如何作弊玩扫雷

教你如何作弊玩扫雷2010-01-09何潇潇注意:以下是在WinXP SP2+VC 6.0下调试通过的,别的版本的Windows没有经过验证.最近闲暇时间迷上了扫雷,有的时候经常遇到模棱两可的地方,很容易死到.于是就在想,要是我一开始 就知道哪个地方有雷就好了.遂打开OllyDBG,对扫雷程序(WinMine.exe),进行了一番跟踪.好在 WinMine.exe没有加壳,直接看它的IMPORT TABLE,在两个可疑的API上下断点,一个就是GDI.Bi...
关于工具棒的一点看法

关于工具棒的一点看法

关于工具棒的一点看法2010-01-09赵湘宁问题:有个朋友编写了一个程序,功能是查找当前所有运行中的应用程序的工具棒按钮信息 。结果发现不同的应用程序其工具棒窗口的类名都不相同。例如,用工具(如Spy)可以查到资源管理器 的工具棒窗口类名为ToolbarWindow32;VC的是Afx:400000:b:1486:10:0;Word为MsoCommandBar。真是 名堂多多。还发现非ToolbarWindow32工具棒窗口类名的应用程序中发送类似TB_...
介绍一个功能强大的API函数 ShellExecute

介绍一个功能强大的API函数 ShellExecute

介绍一个功能强大的API函数 ShellExecute2010-01-09zxn问题的提出:我使用MFC编写一个APP,要求About对话框中显示LOGO、公司名、地址和公司的URL链接。使用户点击URL链接以后,启动浏览器访问Web页面,这种对话框中的热链接使应用程序增色不少。我琢磨的方法是 从系统注册表中通过查找.htm 或 .html文件的关联程序来获得缺省浏览器的名字,这样好象有很多工作要做。此外,如果浏览器已经打开,总是开始一个新的实例替代当前已...
利用键盘钩子开发按键发音程序

利用键盘钩子开发按键发音程序

利用键盘钩子开发按键发音程序2010-01-09GDGF一、前言一日,看见我妈正在用电脑练习打字,频频低头看键盘,我想:要是键盘能发音的话,不就可以方便她养成"盲打"的好习惯吗?光想不做可不行,开始行动(您可千万别急着去 拿工具箱啊^_^)...按键能发音,其关键就是让程序能够知道当前键盘上是哪个键被按下,并播 放相应的声音,自己的程序当然不在话下,那么其它程序当前按下哪个键如何得知呢?利用键盘钩子便可 以很好地解决。下载本文的全部源代...
模拟简单猜扑克牌大小的Win32控制台游戏

模拟简单猜扑克牌大小的Win32控制台游戏

模拟简单猜扑克牌大小的Win32控制台游戏2010-01-09在坛子里经常能看到MFC编制的GUI游戏,功能强大,界面美观,人机交互便利等优点是控制台程序是无可比拟的.但对于刚初步了解 C/C++的朋友们是无法短期内能学会编写MFC游戏的。于是小弟采用 Win32 控制台 项目做了一个C++的小游戏,希望对于那些朋友,对大一, 大二的学生编写字符界面的小程序有所帮助。该游戏的名称不妨命名为Hi(gh)-Low,其玩法和规则如下:1、玩法①洗牌:每盘游戏开始...
浅谈在应用CRectTracker类的程序中响应WM_LBUTTONUP消息

浅谈在应用CRectTracker类的程序中响应WM_LBUTTONUP消息

浅谈在应用CRectTracker类的程序中响应WM_LBUTTONUP消息2010-01-09赵春生CRectTracker类也有人称之为“橡皮筋”类。我们可以通过Windows自带的画图板来了解这个类的作用:用“选定”功能在画图区随意选中一块儿区域,此时会出现一个由虚线和八个调整标记点组成的矩形选框,我们可通过鼠标点中矩形选框的中心移动其位置,并且能利用调整标记 点来改变其大小…&helli...
如何用Win32 SDK编程创建Tri-pane HTML Help窗口

如何用Win32 SDK编程创建Tri-pane HTML Help窗口

如何用Win32 SDK编程创建Tri-pane HTML Help窗口2010-01-09zxnHTML Help使用户能在一个帮助窗口中使用工具棒、查看目录和帮助主题。目前,有两种方法创建Tri-pane类型的HTML Help窗口:使用HTML Help Workshop创建窗口使用HTML Help API编程创建窗口本文将介绍如何使用这两种方法创建Tri-pane HTML Help窗口。使用预定义窗口在HTML Help Workshop环境中...
如何用C++编程获得某台机器的IP地址

如何用C++编程获得某台机器的IP地址

如何用C++编程获得某台机器的IP地址2010-01-09 VC知识库 对于这个古老的问题,VC知识库的精华区以及以往的在线杂志中都有详尽不一的描述。本文提供的方法是一个比较完整的解决方案,并附有详细的实现细节。希望大家对这个问题有彻底的认识。其实,如果你熟悉 Windows 的Sockets API,并了解一些底层的Winsock知识。那么要获得某台机器的IP地址并不是什么难事。一台机器可以装多块网卡,因此它就可能有多个IP地址。目前很多发烧友的PC机都...
实例解说双缓冲

实例解说双缓冲

实例解说双缓冲2010-01-09昨天在论坛上,有人问起双缓冲的实现问题,想起网上这方面资料比较凌乱,而且多是DirectX相关的,今天特地在这里给大家简要的介绍一下双缓冲技术及其在VC++的GDI绘图环境下的实现。1、Windows绘图原理我们在Windows环境下看到各种元素,如菜单、按钮、窗口、图像,从根本上说,都是“画”出来的。这时的屏幕,就相当于一块黑板,而Windows下的各种GDI要素,如画笔、画刷等,就相当于彩色粉笔...
<< 11 12 13 14 15 16 17 18 19 20 >>