VC/MFC
equationdz
这个作者很懒,什么都没留下…
展开
-
RichEdit
1.设置edit只读属性 方法一: m_edit1.SetReadOnly(TRUE); 方法二: ::SendMessage(m_edit1.m_hWnd, EM_SETREADONLY, TRUE, 0);---------------------------------------------------------------原创 2008-01-28 17:55:00 · 474 阅读 · 0 评论 -
XP环境在VC6.0下使程序直接具有XP风格(XP style)
XP环境在VC6.0下使程序直接具有XP风格(无外带文件,绿色)如果希望在VC2005下使程序具有XP风格,请点击这里步骤:1.Insert----Resourse----Custom2.Resourse Type:24----OK3.Insert 24 一个资源----资源名字为"1"4.在这个名为"1"的资源,写入如下代码 version="1.0" en转载 2008-02-17 17:46:00 · 622 阅读 · 0 评论 -
MFC中实现的画箭头算法 (Arrow in MFC)
在以前做的程序中,曾经需要使用程序来画出一个箭头 但是自己想出的算法又不是太通用 所以在codeproject中寻找到一个这样的算法,在这里介绍一下 可以改变三角形大小,顶点角度,是否填充和填充颜色等 但是画出的箭头还是不够美观....呵呵,还好吧 其中填充是代表箭头内是否填充颜色 先来看声明和实现 /////////////转载 2008-02-17 17:52:00 · 2296 阅读 · 2 评论 -
VC下简易实现窗体的淡入淡出效果(fade in-out for CDialog)
这种方法可以简易的实现窗体淡入淡出效果.(在窗体透明的情况下无法完成这个效果)使用AnimiateWindow函数实现1.在头文件StdAfx.h中,添加: #undef WINVER //取消原有版本定义,重新定义版本 #define WINVER 0x5000 //为了使AnimateWindow函数可用转载 2008-02-17 17:59:00 · 785 阅读 · 0 评论 -
VC下内存泄露检测与CListCtrl使用技巧(全)
VC下内存泄漏检测:c++中检测内存泄漏可以引入系统定义的宏来查看,内存在哪个位置泄漏文件开始处加入下列定义#define _CRTDBG_MAP_ALLOC#include #include 程序退出时加入以下函数:_CrtDumpMemoryLeaks();如果有泄漏会显示e:myprojectmltithrd.14mltithrd.cpp(95) : {68} clien转载 2008-02-17 18:04:00 · 1122 阅读 · 0 评论 -
VC下简易实现全局热键--无DLL无钩子(Register HotKey)
使用RegisterHotKey()函数即可.MSDN:The RegisterHotKey function defines a system-wide hot key. //函数原型: BOOL RegisterHotKey( HWND hWnd, // window to r转载 2008-02-17 17:37:00 · 1034 阅读 · 0 评论 -
VC下不让窗口在任务栏显示 (Hide CDialog of task bar)
这里介绍的两种方法是直接调用WINDOWS API就可以了 在OnInitDialog()函数下添加: //消除任务栏显示 LONG style = ::GetWindowLong(GetSafeHwnd(), GWL_EXSTYLE); //获得窗体扩展风格 style &= ~WS原创 2008-02-17 17:48:00 · 1407 阅读 · 0 评论 -
VC下在对话框上实现接受文件拖放 (Drop files)
大部分Windows应用工具程序都能响应接受文件拖放,比如Word,Notepad等 当把文件直接拖拽到该窗体或者是某个控件下,应用程序会直接打开这个文件,这样将极大的方便客户使用 本文就是介绍这个的实现,跟以前一样,不看到代码一定会很不爽: 1. 首先先将您的CDialog设置为Accept files,通过代码或者选项点击都可以实现 2. 添加函数声明和消息映射转载 2008-02-17 17:51:00 · 1152 阅读 · 1 评论 -
VC6.0下实现系统托盘的气泡提示窗口(Use NIIF_INFO)
效果演示如下:首先需要更新一下VC6.0的SDK(否则会出现编译出错),方法如下: 1.把ShellAPI.h文件中的关于任务栏提示的函数和常量替换为下面的内容(重要): //// //// Tray notification definitions ////转载 2008-02-17 17:58:00 · 3638 阅读 · 1 评论 -
VC下添加和删除自己系统托盘图标,及托盘事件的响应
添加和删除系统托盘图标: //需要添加一个成员变量 NOTIFYICONDATA m_nd; //NOTIFYICONDATA结构 /*************************************** * 将图标加入转载 2008-02-17 18:02:00 · 1129 阅读 · 0 评论 -
利用Visual C++实现系统托盘程序
自从微软公司推出Windows 95操作系统以来,系统托盘应用作为一种极具吸引力的用户界面设计深受广大用户的喜爱。使用系统托盘作为用户界面的Windows应用程序数不胜数,比如"金山词霸"、"Winamp"、"RealPlayer"等等。 这些程序运行时不显示运行窗口,只在任务栏上显示一个图标,表示程序正在运行,用户可以通过鼠标与应用程序交互,程序开发人员有时也需要编制一些仅在后台运行的类似程转载 2008-02-23 17:33:00 · 600 阅读 · 0 评论 -
Win2K下的Api函数的拦截
软件名称:学校管理系统源码大学管理模板正式版软件版本:V2009建议分类:电子商务联系EMAIL:webmaster@wygk.cn官方网站:http://www.gzxtx.cn演示网站:http://www.gzxtx.cn/school8下载地址:http://www.gzxtx.cn/dow/school8.rar联系方式:QQ:417586492,38306293,657248708软件转载 2008-02-23 17:28:00 · 610 阅读 · 0 评论 -
如何在VC中实现淡入淡出的启动画面
一日心血来潮,想给启动画面来个淡入淡出,于是去谷歌(google)查了半天,无果。但知道了AnimiateWindow 这个函数。好吧 ,让我们开始吧。首先,请在需要淡入淡出 窗口 的cpp文件或者stdafx.h加入下列代码(注意要加在#include前面哦,否则没有作用哦)。 #undef WINVER //取消原有版本定转载 2008-02-23 17:34:00 · 763 阅读 · 0 评论 -
任意用户模式下执行 ring 0 代码
任意用户模式下执行 ring 0 代码Author : sinisterEmail : sinister@whitecell.orgHomePage: http://www.whitecell.org 众所周知在非 Admin 用户模式下,是不允许加载驱动执行 RING 0 代码的。本文提供了一种方法,通过修改系统 GDT,IDT 来添加自己的 CALLGATE 和INTGATE 这转载 2008-03-25 12:53:00 · 404 阅读 · 0 评论 -
Win32游戏编程
摘 要 Visual C++作为一个功能非常强大的可视化应用程序开发工具,是计算机界公认的最优秀的应用开发工具之一。本文介绍的就是在Visual C++.NET下开发Win32游戏软件的流程。通过游戏编程熟练掌握了Visual C++这个应用开发工具。本文共四章:第一章 Win32游戏编程1.1 简单的Win32程序1.2 WinMain()函数1.3 注册窗转载 2008-06-12 06:49:00 · 2089 阅读 · 0 评论 -
使用VirtualQuery查看内存页面信息
<br />本文介绍了使用VirtualQuery函数查看进程内存地址空间的页面分配情况,并给出了一个例程。<br /><br />1 Win32内存布局简介<br /><br />在16位CPU的时代,受寻址范围的限制,系统所能使用的内存空间是非常少的。据说当年Bill Gates曾说过“640K内存对任何人来说都够用了”,现在看来似乎很好笑,不过做过DOS编程的人大概都还会怀念那个时代。后来有了386,有了保护模式,有了虚拟内存,多任务终于成为现实。<br /><br />在Win32环境下,寻址不再需原创 2010-12-29 09:22:00 · 2425 阅读 · 0 评论 -
详谈HOOK API的技术
http://www.ttian.net/website/2006/0206/1109.htmlHOOK API是一个永恒的话题,如果没有HOOK,许多技术将很难实现,也许根本不能实现。这里所说的API,是广义上的API,它包括DOS下的中断, WINDOWS里的API、中断服务、IFS和NDIS过滤等。比如大家熟悉的即时翻译软件,就是靠HOOK TextOut()或ExtTextOut()这转载 2008-02-17 19:16:00 · 487 阅读 · 0 评论 -
为对话框设计美观的工具栏 (Add toolbar for CDialog)
本文介绍,在CDialog下工具栏的实现和优化 1. 为CDialog添加工具栏 2. 使toolbar以多行显示 3. 为toolbar添加提示信息(TipText) 4. VC6下显示包含多彩色图片的工具栏 一. 为CDialog添加工具栏 首先需要建立相应的TOOLBAR资源 将工具栏按钮摆放好,将相应的提示信息(TipText)写入,最好也将转载 2008-02-17 17:55:00 · 1400 阅读 · 0 评论 -
如何将文本文件显示在RichEdit中
网友回答:发表者:dawnwinds也可以调用SetWindowText()。。。。 发表者:lixiaosanCStdioFile file; if( !file.Open(_T("c://1.txt"), CFile::modeRead)) { AfxMessageBox(_T("can not open file!"))原创 2008-01-28 18:03:00 · 604 阅读 · 0 评论 -
VC多线程编程
VC中多线程使用比较广泛而且实用,在网上看到的教程.感觉写的挺好. 一、问题的提出编写一个耗时的单线程程序: 新建一个基于对话框的应用程序SingleThread,在主对话框IDD_SINGLETHREAD_DIALOG添加一个按钮,ID为IDC_SLEEP_SIX_SECOND,标题为“延时6秒”,添加按钮的响应函数,代码如下: void CSingleThreadDlg:转载 2008-01-28 15:54:00 · 350 阅读 · 0 评论 -
MessageBox的不同
问题: 在一个工程里:MessageBox(_T("This is a try!"), TEXT("Bench Mark"), MB_OK);正常,编译通过,运行正常在另一个工程中:MessageBox(_T("This is a try!"), TEXT("Bench Mark"), MB_OK);编译出错error C2660: MessageBoxW : function doe转载 2008-01-28 17:30:00 · 417 阅读 · 0 评论 -
在win32下使用内存映射文件
在win32下使用内存映射文件内存映射文件把虚拟可寻址空间映射到文件上。整个文件就可以很容易的访问,就像它在内存中一样。但是它实质还是在硬盘中,只是需要的时候载入需要的部分到内存,这样可以节约物理内存的使用。windows 使用 这个来加载EXE和DLL,所以这个因该是高效的。windows下默认的虚拟内存页最小是512KB,所以对512KB以下的文件使用就是多余的低效的。按照以下步骤使用1. 调转载 2008-02-03 10:41:00 · 1203 阅读 · 2 评论 -
在C++中不要大量用new申请小变量
在C++中不要大量用new申请小变量write by DKink|棼紫 C运行时库或者MFC提供的内存管理器不是为小内存块设计的。new操作会为一个小内存块申请操作申请一片超过自身大小很多的空间,从而浪费了内存。做个试验,写如下程序。/////////////////////////////////////////////////////////////////////////////转载 2008-02-03 10:45:00 · 826 阅读 · 0 评论 -
Shellcode技术杂谈
本文转载自网络:Shellcode是溢出程序和蠕虫病毒的核心,提到它自然就会和漏洞联想在一起,毕竟Shellcode只对没有打补丁的主机有用武之地。网络上数以万计带着漏洞顽强运行着的服务器给hacker和Vxer丰盛的晚餐。漏洞利用中最关键的是Shellcode的编写。由于漏洞发现者在漏洞发现之初并不会给出完整Shellcode,因此掌握Shellcode编写技术就显得尤为重要。原创 2008-02-04 17:37:00 · 730 阅读 · 0 评论 -
一个简单的SOAP服务端和一个客户端
如果想了解SOAP到底是什么,就要自己动手建立自己的SOAP标准对象。本文可以帮助你起步。 简介SOAP - 简单对象处理协议(Simple Object Access Protocol) - 是当前XML开发的热点。它是微软新一代Visual Studio的主要角色,是".NET"策略的基础。如果想用VB 6编制一个有保障的SOAP服务,可以查阅微软的SOAP工具包(VB)。但如果想了解转载 2008-02-13 14:53:00 · 765 阅读 · 0 评论 -
深入浅出HOOK API及完美应用
Hook Win32 API 是一项有趣而实用的WINDOWS系统编程技术,应用领域十分广泛。虽然已经有不少的文章介绍过 Hook Win32 API 的方法了,我还是来作些简单的介绍,以便大家了解其工作原理。 Hook Win32 API 是什么意思?就是钩住Win32 API;那又何谓“钩”呢?就是绕弯的意思,让Win32 API函数的调用先绕一个弯路,在它执行实际功能之前,我们可以转载 2008-02-15 18:43:00 · 1860 阅读 · 0 评论 -
VC下实现窗体透明效果(clarity for CDialog)
VC下实现窗体透明效果,我只测试了CStatic是不可以实现这个效果的,应该是只有CWnd子类才可以实现这个效果,如果想使用空间透明化,只能把他放窗体上了....20%透明效果如下图: 具体代码实现: //参数说明:透明度(范围是0-255) void CSizeDlg::SetWindowAttributes(int Attri转载 2008-02-17 17:46:00 · 1253 阅读 · 0 评论 -
VC下在对话框上直接输入字母或文字的实现 (Input word on CDialog directly)
以前在看孙鑫老师的视频时,发现了一个在CDialog直接输入字母或文字的思路及其实现方法 说白了就是直接在对话框上画出文字 根据孙鑫老师的代码,经过了自己的小小的修改,发现还是比较好用的,现公布出来 实现代码: ///////////////////////////////////////// //相关成员转载 2008-02-17 17:54:00 · 1084 阅读 · 0 评论 -
在VC2005下使程序直接具有XP风格(XP Style)
在VC2005环境下有的时候必须使用"多字节字符集",而不使用默认的"Unicode"字符集,执行的程序是不具有XP外观的本文章说明了,在XP环境在VC2005(vc8)下使程序直接具有XP风格(无外带文件,绿色)其中的代码是和 "VC6下的实现XP风格" 是一样的,就是文件名不一样了将以下代码写到一个文本文件中,再重命名为"*.manifest"到VC2005环境中,"添加资源",把这个文件添加转载 2008-02-17 17:56:00 · 834 阅读 · 0 评论 -
VC下动态改变菜单显示的标题和Checked状态(Change title of CMenu and Checked)
曾经为这个一度苦闷,终于有一天找到了...估计不是最合理的办法使用ModifyMenu函数,原型如下: /*************************************************** * 4个参数: * nPosition - 旧菜单的资源ID或位置(根据nF转载 2008-02-17 18:02:00 · 2146 阅读 · 1 评论 -
VC下CSocket非阻塞方式下的连接框架
CSocket非阻塞方式(不用自己建立线程)1.服务端应用非阻塞方式需要自己声明一个类继承CSokcet类 // MySocket.h : header file class CMySocket : public CSocket { // Attributes转载 2008-02-17 18:03:00 · 3092 阅读 · 1 评论 -
MFC中CBitmap的简单复制方法 (Copy CBitmap)
在这里为大家提供一种CBitmap复制的方法 经过自己的一层封装,就形成的非常好用的CBitmap的复制工具函数 先看函数实现: HBITMAP CMyDialog::CopyBitmap(HBITMAP hSourceHbitmap) { CDC so转载 2008-02-17 17:50:00 · 1127 阅读 · 0 评论 -
MFC - 打开系统文件对话框
<br />1 创建一个基于对话框程序<br />2 创建按钮IDC_BUTTON1 名为“文件对话框”;<br />3 创建按钮IDC_BUTTON2 名为“打开文件”;<br />4 创建示例编辑框 IDC_EDIT1 ;<br />5 创建示例编辑框 IDC_EDIT2 ;<br /><br /><br /><br /> <br />6双击文件对话框添加处理函数OnBnClickedButton1(),在函数内执行:<br />void COpenFileDlg::OnBnClickedButton1转载 2010-12-28 15:07:00 · 712 阅读 · 0 评论