Welcome 微信登录

首页 / 软件开发 / C++

推荐一个简单的托盘类

推荐一个简单的托盘类

推荐一个简单的托盘类2011-01-13郑金冶有的网友开发了自己的托盘类,实现起来略微烦琐。在这里我向大家推荐一个实现简单而十分有效的托盘类(是我在一本书中学来的)。1、把TrayIcon.cpp和TrayIcon.cpp拷贝到你的项目目录,并添加到项目中。2、在DemoDlg.h中加入#include “TrayIcon.h”3、通过类向导向类CDemoDlg添加成员变量CTrayIcon m_CTrayIcon;4、建立菜单资源...
BCB中如何读写硬件端口

BCB中如何读写硬件端口

BCB中如何读写硬件端口2009-11-20BCB中利用__emit__函数可以直接将二进制程序代码嵌入程序中,这样就可以实现一些底层的操作。由于直接操作系统底层,这种方法可能会导致系统的不稳定。下面是利用__emit__函数读写硬件端口的方法。//读端口//port参数为输入端口地址,value为返回值.unsigned char __fastcall inportb(unsigned short int port){unsigned char valu...
自制进程管理器

自制进程管理器

自制进程管理器2011-01-20陈炜系统中运行的进程实际上比我们在任务管理器("Ctrl+Alt+Del"对话框)中看到的要多,有些恶意的程序是无法在任务栏和任务管理器中看到的。本文介绍如何显示系统当前运行的所有进程,及如何终止运行的进程。运行程序,点按钮"获取进程",则系统当前运行的所有进程名称以及进程对应的ID、涉及的线程数、优先级便显示在列表视图里面了。图一是程序运行效果图。图一 运行效果图1.基本原理系统中...
用非对称密码算法制作共享软件的注册码

用非对称密码算法制作共享软件的注册码

用非对称密码算法制作共享软件的注册码2009-12-11网上大多数共享软件的注册码(又称为序列号)的设计都不是很好,比较容易被破解者做出注册机来。下面介绍一种利用公钥算法(又称为非对称算法)RSA制作注册码的方法。采用这种方法,不知道密钥的话时很难写出注册机来。实际上有部分软件已经使用了这类方法。大家都知道RSA采用一对密钥,即公钥和私钥,从公钥难于推出私钥,反之亦然,这个难度是基于大数分解的难度。利用RSA生成共享软件注册码的思路如下:1、先随机生成一对...
在VC++中实现Microsoft Agent

在VC++中实现Microsoft Agent

在VC++中实现Microsoft Agent2011-01-20龚辉斌用过Office97或Office2000的人会知道,Office软件中有一个可爱的Office助手,能够根据不同的操作作出一些有趣的提示与动画,使用户操作更人性化、有趣化。正象这Office助手“大眼侠”一样,Microsoft提供了代理软件开发技术,称为“Microsoft Agent”,它能支持中文。有强大的交互功能与人性特点,不仅...
使用Windows虚拟设备驱动程序(VxD)之1

使用Windows虚拟设备驱动程序(VxD)之1

使用Windows虚拟设备驱动程序(VxD)之12009-12-11一、VxD介绍本文介绍VxD的作用。如果Windows 95提供的标准VxD对你的硬件或者软件不能提供100%的兼容支持,你需要为你的硬件或者软件(包括16位和32位软件)创建VxD。如果你想让Windows用户使用你的硬件或者软件的某些新特征,你也可以创建VxD。本文介绍如何写VxD,讲述了创建VxD所需的结构、过程和调用,还给出了创建和测试VxD的步骤。VxD可以是静态的或者动态装载的...
使用Windows虚拟设备驱动程序(VxD)之2

使用Windows虚拟设备驱动程序(VxD)之2

使用Windows虚拟设备驱动程序(VxD)之22009-12-11八、VxD初始化VMM初始化一个VxD时做下列工作:1、装载实模式初始化段并调用实模式初始化过程。该过程可以完成阻止装载VxD,阻止启动Windows,指定设备实例数据和在内存中选择页面给设备专用的工作。2、装载VxD其它段到32位平坦内存模式的保护模式内存,并丢弃实模式初始化段。3、发送Sys_Critical_Init消息到设备控制过程。禁止硬件中断,所以VxD应该尽可能地用较少的时间...
用IMAPI实现CD刻录和设备查找

用IMAPI实现CD刻录和设备查找

用IMAPI实现CD刻录和设备查找2011-01-20我读了你在 January 2004 中有关获取驱动器盘符以及用 GetDriveType 函数判定某个磁盘是否为 CD(DRIVE_CDROM)的专栏文章,但我如何才能知道 CD 驱动器是不是刻录设备呢?此外,如何将文件写入可擦写 CD?Windows XP 允许你用 Windows 资源管理拖拽文件,并将其写入CD。你能否告知有没有什么方法从我的程序中实现,而不需要用户购买第三方软件,如:Nero ...
虚拟设备驱动程序的设计与实现

虚拟设备驱动程序的设计与实现

虚拟设备驱动程序的设计与实现2009-12-11由于Windows对系统底层操作采取了屏蔽的策略,因而对用户而言,系统变得更为安全,但这却给众多的硬件或者系统软件开发人员带来了不小的困难,因为只要应用中涉及到底层的操作,开发人员就不得不深入到Windows的内核去编写属于系统级的虚拟设备驱动程序。Win 98与Win 95设备驱动程序的机理不尽相同,Win 98不仅支持与Windows NT 5.0兼容的WDM(Win32 Driver Mode)模式驱动...
用Shell扩展实现源代码统计程序

用Shell扩展实现源代码统计程序

用Shell扩展实现源代码统计程序2011-01-20king_dxs一、前言在 Windows 的资源管理器窗口中,我们见过 WinZIP,WinRAR 等软件能在文件或文件夹的默认快捷菜单中添加几个菜单项,它可以使用户无须进入软件内部而直接在视窗中进行压缩/解压操作,十分方便用户操作,这无疑是一个较好的应用模型,它就是我们所说的Shell扩展技术。本文将以一个普通的源代码统计程序为例来说明怎样实现Shell扩展技术。下面是程序的运行效果图:图一 示例代...
为应用程序添加脚本支持

为应用程序添加脚本支持

为应用程序添加脚本支持2011-01-20PowerCPP代码运行效果图如下:介绍有时我们并不需要提供完整的脚本支持,就像本文所要介绍的ActiveX脚本宿主(script hosting,可能称为脚本引擎更好理解),本文提供的ScriptControlMacro程序展示了使用Microsoft脚本控件简单地实现脚本支持功能,代码中还包括了以下一些技术:用文件映射实现只允许一个应用实例.如何用MFC存储读取二进制注册表数据如何保存恢复应用程序窗口尺寸,位置...
用游戏操纵杆摸拟鼠标

用游戏操纵杆摸拟鼠标

用游戏操纵杆摸拟鼠标2009-12-11要编写一个支持游戏操纵杆的应用程序,首先必须要捕获游戏操纵杆,接着要处理Windows发送给程序窗口的操纵杆消息,最后使用完操纵杆后,还应将捕获的操纵杆资源释放。调用API函数joySetCapture能捕获游戏操纵杆。调用joySetCapture函数后,操纵杆产生的所有消息将会发送到指定的窗口。它的原型为:MMRESULT joySetCapture(HWND hwnd, UINT uJoyID, UINT uP...
消息值,托管字符串,扰乱代码及其它

消息值,托管字符串,扰乱代码及其它

消息值,托管字符串,扰乱代码及其它2011-01-20小刀人许多 C++ 爱好者已经对我最近的专栏中渗入了太多关于C#的内容表示关注。我承认这一点!我唯一的辩解是:由于 Microsoft® .NET Framework 已经获得广泛的认同,给我发送关于C#问题的读者越来越多,同时因为C# 和 C++ 如此类似,所以我就回答了一部分他们的问题。这不是我有意疏远 C++ 爱好者——上帝知道,我就是他们中的一员啊!不管怎样,为了...
用户数据报协议(UDP)

用户数据报协议(UDP)

用户数据报协议(UDP)2009-12-11介绍用户数据报协议是定义用来在互连网络环境中提供包交换的计算机通信的协议。此协议默认认为网路协议(IP)是其下层协议。此协议提供了向另一用户程序发送信息的最简便的协议机制。此协议是面向操作的,未提供提交和复制保护。如果应用程序要求可靠的数据传送应该使用传输控制协议(TCP)。数据报格式如下:用户数据报头格式域源端口是可选域,当其有意义时,它指的是发送进程的端口,这也就假定了在没有其它信息的情况下,返回信息应该向什...
<< 91 92 93 94 95 96 97 98 99 100 >>