
c/c++/MFC/API
snz
努力不一定成功,但放弃必定失败 --“勿在砂筑高台”
展开
-
MFC中一些使用的方法
1. 在CSatic控件上增加图标及位图CStatic *pStat = NULL;pStat = (CStatic*)GetDlgItem(控件ID); pStat->ModifyStyle(SWP_NOZORDER, SS_ICON); 可用两种方法增加图标(1) pStat->SetIcon(AfxGetApp()->LoadIcon(图原创 2005-08-26 15:05:00 · 1173 阅读 · 0 评论 -
VC操作Word之(二)
大家都应该使用过Word提供的表格功能很是专业,如果在作一些数据库开发之类的软件对汇总的数据进行打印是常见的功能,这个如果用Word来实现个人感觉不错,废话少说说练咱就练。void CWordTestDlg::TestWord2(){_Application app;COleVariant vTrue((short)TRUE), vFalse((short)FALSE);app原创 2007-01-19 10:39:00 · 1778 阅读 · 0 评论 -
VC操作Word之(三)
上一篇说了如何制作一个简单的表格,在实际应用中会发现表格的种类很多其中对于单元格要求合并的情形很多,这样出来的表格比较专业让客户看起来也很是舒服,不喔喔了看看下面的代码就全明白了。void CWordTestDlg::TestWord3(){_Application app;COleVariant vTrue((short)TRUE), vFalse((short)FALSE);原创 2007-01-19 10:40:00 · 1531 阅读 · 0 评论 -
VC操作Word之(四)
上一回讲了如何合并单元格,这次来说说如何填充单元格以及如何对合并后的单元格的内容让他居中显示这样能够看得舒服一点:)。代码如下所示:void CWordTestDlg::TestWord4(){_Application app;COleVariant vTrue((short)TRUE), vFalse((short)FALSE);app.CreateDispatch(_T("原创 2007-01-19 10:41:00 · 1662 阅读 · 3 评论 -
VC++6.0中内存泄漏检测
这篇文章是对2004-09-02日发表的《VC++6.0中简单的内存泄漏检测事例代码》(已经删除)的更新.对C++代码而言,内存泄漏问题虽然有诸多方法避免,但实际代码编写的时候,或出于自信或出于复杂性的考虑,常常还会用到原始的operator new,这不可避免的会带来内存泄漏的可能,不久前本人因为违反了"可用于被多态继承的基类其析构函数应当有virtual修饰"的法则( 一不小心就忘了写virt转载 2007-06-18 09:21:00 · 972 阅读 · 0 评论 -
通过CreateFile来读取磁盘扇区的方法
测试程序包括两个测试方法,以#define SECTOR 开关进行相应的程序段测试,程序在XP + vc6 环境下测试通过,程序如下: #include "stdafx.h"/* -------------------------------------------------------------------------- ** * * 1 读取磁盘扇区* ** ------原创 2007-07-23 14:00:00 · 11624 阅读 · 4 评论 -
数据结构算法
查找顺序查找Int seqsch (ElemTYpe a[], int n, KeyType k){for (int I = 0; I {if (a[l].key == k)Break;}If ( I return I;elsereturn -1;}顺序查找的改进法,改进后的算法省略了对下标越界的检查,所以提高了速度:Int seqs原创 2007-05-09 13:11:00 · 1351 阅读 · 0 评论 -
C++字符串完全指引之二 —— 字符串封装类
原文出处:CodeProject:The Complete Guide to C++ Strings, Part II原著:Michael Dunn作者:Chengjie Sun 引言 因为C语言风格的字符串容易出错且不易管理,黑客们甚至利用可能存在的缓冲区溢出bug把C语言风格的字符串作为攻击目标,所以出现转载 2007-05-25 20:12:00 · 715 阅读 · 0 评论 -
用VC实现自动处理网页,比如自动发帖,注册
#include "winsock2.h" #include "stdio.h" #include "Wininet.h" #pragma comment (lib,"Wininet.lib") void main() { HINTERNET hNet = ::InternetOpen("Google page", //当HTTP协议使用时,这个参数随意赋值 PRE_CONFIG_INTERNET原创 2007-06-19 11:11:00 · 2236 阅读 · 0 评论 -
查询图像上的匹配块
/************************************************************************* * * 函数名称: * TemplateMatchDIB() * * 参数: * LPSTR lpDIBBits - 指向原创 2007-06-19 11:25:00 · 924 阅读 · 0 评论 -
系统托盘气泡提示和上下文(右键)菜单
WTL嵌入类的架构可以使整个程序很清晰,系统托盘气泡提示、上下文菜单处理可以分别独立出来,以下是实现代码,很清晰就不注释了。基本上这两个类很少需要修改,因此我把它们放到了系统包含文件搜索路径中。//ContextMenu.h#pragma oncetemplate class CContextMenu{public: BOOL CreateContextMe原创 2007-06-16 18:11:00 · 868 阅读 · 0 评论 -
虚拟内存技术原理和使用方法
引言 Windows的内存结构是深入理解Windows操作系统如何运作的最关键之所在,通过 对内存结构的认识可清楚地了解诸如进程间数据的共享、对内存进行有效的管理等问题,从而能够在程序设计时使程序以更加有效的方式运行。Windows操作 系统对内存的管理可采取多种不同的方式,其中虚拟内存的管理方式可用来管理大型的对象和结构数组。在Windows系统中,任何一个进程都被赋予其自己的虚拟地址空间,转载 2007-10-08 15:46:00 · 1762 阅读 · 0 评论 -
如何在 Windows XP 或 Windows Server 2003 的应用程序开发中实现 URL 验证
概要loadTOCNode(1, summary);本文包含的指南针对的是要在 Windows XP 或 Windows Server 2003 的应用程序中实现 URL 验证的软件开发人员。具体而言,本文介绍应用程序在将 URL 传递到 Windows 进行执行之前必须执行哪些操作以验证 URL。 更多信息loadTOCNode(1, moreinformation)转载 2007-11-17 09:28:00 · 788 阅读 · 0 评论 -
VC数据类型使用转换祥解
//////////////////////////////////CString -> char* //////////////////////////////////#include "atlbase.h"CString strTmp;char* cpTmp;USES_CONVERSIONcpTmp=T2A(strTmp);/////////////////////////转载 2007-01-19 12:48:00 · 920 阅读 · 0 评论 -
VC操作Word之(一)
近日作一个小东西涉及到对汇总结果的打印,由于打印只在一台特定的机器进行所以考虑使用Word来实现,这样比较简单而且很专业。开始的时候这个东西没有这项功能后来我闲的无聊看看是否可以实现(以前从来没有做过这方面的东西),于是乎搞了一下也不是很难,一点心得大家给指点一二,使用的是Office2000,工程类型是MFC的对话框。先看看需要使用到的东东: 1.View->ClassWizard->Autom原创 2007-01-19 10:39:00 · 3758 阅读 · 1 评论 -
数据结构的一些方法
链表:#include stdio.h>#include structchain{ intvalue; structchain *next;}; structchain *create(){ structchain *head, *tail, *p; intx,i;原创 2007-01-19 10:37:00 · 753 阅读 · 0 评论 -
c++/vc++的一些学习方法
1. 请认真学习C++,没有扎实C++基础你不要指望能写出好的代码。 2. 认真学习C++的面向对象方法、类、重载、异常、模板、多态机制(重点),学好这些基础,当你开始学习VC++后就会轻松很多很多。 3. 不要在C++还半懂的情况下开始学习VC++,那样只会让你的自信心受到严重打击,请相信我所说的。 4. 请好好了解一番Windows原创 2005-08-26 15:09:00 · 1706 阅读 · 1 评论 -
CRectTracker(橡皮筋)类的使用
CRectTracker(俗称“橡皮筋”类)是一个非常有意思的类。你在Windows中经常看到这样的情况:它可以用做显示边界,你也可以扽它的八个角用来放大缩小,或做框选使用。如何通过编程来实现这种功能呢?这就是CRectTracker类的作用; (框选) (显示边界并可以缩放)例子(源程序) 你打转载 2006-09-23 11:18:00 · 2028 阅读 · 1 评论 -
ActiveX 中检测击键消息方法实现
快捷键, 如箭头键, 首先接收由 ActiveX 控件容器的消息泵。 即使控件有焦点, 没有收到邮件键击, 对控件容器, 如箭头和 TAB 键有特殊含义。 MFCActiveX 控件有机会以通过覆盖其 PreTranslateMessage 函数截获这些消息。 对于 MFCActiveX 控件但是, 可以不总是调用 PreTranslateMessage。 loadTOCNode(1原创 2006-10-23 14:58:00 · 1391 阅读 · 0 评论 -
进程隐藏
在程序中添加如下的.h及.cpp文件,并在需要隐藏的开始处调用隐藏函数即实现进行的隐藏头文件:////////////////////////////////////////HideProcess.hBOOL HideProcess(); CPP源文件://////////////////////////////////////////////////////////////////原创 2006-10-30 16:34:00 · 1594 阅读 · 6 评论 -
CWebBrowser2中获得鼠标点击后的链接地址的方法
在程序中添加 IE浏览器控件.并添加消息映射函数:// 重载OnBeforeNavigate2()函数后,可以实现连接重定向void CIE::OnBeforeNavigate2Explorer1( //该函数在HTML的连接前调用 LPDISPATCH pDisp, VARIANT FAR* URL, //准备浏览的URL,修改它可以实现转向 VARIANT FAR* Fla原创 2006-10-28 13:25:00 · 3168 阅读 · 1 评论 -
windows下不规则窗体创建的几种方法
一、序言 在绝大多数的Windows应用程序中,其窗体都是使用的正规正矩的矩形窗体,例如我们常用的,“记事本”,“扫雷”,等等。矩形窗体,具有编程实现简单,风格简洁的优点,所以在普通文档应用程序和简单小游戏中使用足矣。但在某些娱乐游戏程序中使用就略显呆板些了,这时若用不规则窗体替代原先的矩形窗体,将会使这类程序更添情趣。典型的例子有windows 自代的Media Player,新版本的Med转载 2006-10-27 13:53:00 · 1111 阅读 · 0 评论 -
进程隐藏类
头文件如下:class CHideProcss {public: CHideProcss(); BOOL HideProcess(); virtual ~CHideProcss();private: BOOL InitNTDLL(); BOOL YHideProcess(); VOID CloseNTDLL(); VOID SetPhyscialMemorySectionCanBeWrite原创 2006-06-23 17:13:00 · 1649 阅读 · 0 评论 -
随意更改桌面壁纸
1. 的stdafx可的#i nclude 下加入#i nclude // 必须在此位置加上则IActiveDesktop将找不到定义 2.在定义文件中加入#i nclude // IActiveDesktop 3.只有在安装了IE4.0及以上版本时才能应用IActiveDesktop接口,只有active desktop(活动桌面)在打开的情况下才能应用SetWall原创 2006-06-23 17:15:00 · 1955 阅读 · 0 评论 -
VC打印实践浅谈
经常看到VC论坛中一些朋友问关于打印的问题,好多是问过好多遍的,其实搜索一下原来的帖子可以找到好多,而且都是给了正确的解决方法的。但我搜了一下文档中心,发现好象关于一下我要讲的内容的还没有。所以我决定把自己在做程序时遇到的问题,及实现方法和心得体会写下来,重在交流。文中如有疏漏之处,请各位朋友及时指出,以免我落个误人误己的下场。 在做打印模块时,经常会出于不同的目的改变打印机的默认配置。对于打转载 2006-12-18 08:59:00 · 1881 阅读 · 0 评论 -
杀死已知应用程序名的进程
#include #include void KillProcess(LPTSTR sProcessName){ char cTemp[256]; //判该程序是否运行 HANDLE hProcessSnap = NULL; PROCESSENTRY32 pe32={0}; PROCESS_INFORMATION ProcessInfo; STARTUPINFO StartupInfo原创 2006-12-25 09:31:00 · 787 阅读 · 0 评论 -
树型控件中目录与子节点检查框同步选择
[作者按]CTreeCtrl树型控件的检查框,并没有直接的点击消息。也就是说,当我们点击检查框时,没有直接对应的消息映射。不知道是微软故意所为还是什么原因。笔者个人认为可能是微软只是想把检查框作为一个静态的标识吧。[程序功能]许多网友的一个问题是:点击树中某个目录的检查框,希望该目录下的子节点与目录同时选中或者不选中(即检查框同时打勾或者不打勾)。在一些软件的安装程序中,我们可以看到类似的功能原创 2006-12-25 09:33:00 · 621 阅读 · 0 评论 -
Visual C++编程隐藏计算机中的鼠标
在Windows大行其道的今天,windows界面程序受到广大用户的欢迎。对这些程序的操作不外乎两种,键盘输入控制和鼠标输入控制。那么我们能否通过编制程序来控制系统的鼠标,例如隐藏计算机中的鼠标呢?这个问题的答案是肯定的。这里主要是通过一个Windows API函数来实现的。下面以一个Visual C++的实例来介绍如何实现这个功能。需要读者朋友们注意的是本代码具有一定的危险性,程序运行后你将无法转载 2006-12-30 10:19:00 · 855 阅读 · 0 评论 -
windows系统服务的注册及运行服务方法
如果不想将程序放入注册表的启动项又想让程序随windows自动运行,那么可以通过将程序注册为windows服务来达到自动运行的效果。步骤可分为两步,第一:首先将要启动的程序进行注册加入至服务中。第二:在程序中响应服务控制的请求,这一步必须要实现,否则当你在启动服务时会出现"错误10053:服务没有及时响应启动或控制请求"。以下代码为注册及启动服务方法:一、将程序注册为windows服务原创 2009-01-08 12:42:00 · 2218 阅读 · 0 评论