- 博客(21)
- 资源 (5)
- 收藏
- 关注
转载 CString,string,char*的综合比较
CString,string,char*的综合比较(zz) CString,string,char*的综合比较
2006-08-17 15:36:00
1051
转载 标准模板库(STL)介绍(上)
作者: winter 作者:Scott Field本文以List容器为例子,介绍了STL的基本内容,从容器到迭代器,再到普通函数,而且例子丰富,通俗易懂。不失为STL的入门文章,新手不容错过! 这篇文章是关于C++语言的一个新的扩展——标准模板库的(Standard Template Library),也叫STL。 当我第一次打算写一篇关于STL的文章的时候,我不得
2006-08-17 15:31:00
1068
转载 标准模板库(STL)介绍(下)
作者: winter 作者:Scott Field 。 本文以STL容器list为例,介绍了find()函数、sort()函数,search()函数,splice()函数等,由浅入深,把list的用法和相关通用函数的用法做了详细介绍。 使用STL通用算法find()在list中查找对象 我们如何在list中查找东西呢?STL的通用算法find()和find_if()可以做这些。 就象f
2006-08-17 15:27:00
1377
原创 vc dll编程
vc dll编程 在我们实际用软件时,经常可看到许多动态连接库。动态连接库有其自身的优点如节省内存、支持多语种等功能,而且,当DLL中的函数改变后,只要不是参数的改变调用起的函数并不需要重新编译。这在编程时十分有用。至于其他妙处,各位在电脑杂志、书籍中都能看到,我这里再说就是废话了.这次小弟我所要讲的是如何在VC5.0中如何做自己的Win32 DLLs,各位要做自己的动态连接库,首先要知
2006-08-07 18:42:00
3015
原创 远程线程插入
说到隐藏进程,下面的文字其实是非常牵强的。本文主要讨论如何将自己的代码注入到别的进程(文中的远程进程)中运行,来达到隐藏的目的。实际上是完全没有了进程这个概念。 文中的例子在Win2k Professional sp2 + VC++6.0上测试通过。其中用到的api好多是ANSI版的,如,LoadLibraryA,MessageBoxA等,也可以改为宽字节版的,即,LoadLibraryW,
2006-08-07 17:26:00
2498
转载 远程线程插入
说到隐藏进程,下面的文字其实是非常牵强的。本文主要讨论如何将自己的代码注入到别的进程(文中的远程进程)中运行,来达到隐藏的目的。实际上是完全没有了进程这个概念。 文中的例子在Win2k Professional sp2 + VC++6.0上测试通过。其中用到的api好多是ANSI版的,如,LoadLibraryA,MessageBoxA等,也可以改为宽字节版的,即,LoadLibraryW,
2006-08-07 17:13:00
1512
原创 VC++动态链接库(DLL)编程深入浅出(三)
另外,自从本文开始连载后,收到了一些读者的e-mail。有的读者提出了一些问题,笔者将在本文的最后一次连载中选取其中的典型问题进行解答。由于时间的关系,对于读者朋友的来信,笔者暂时不能一一回复,还望海涵!由于笔者的水平有限,文中难免有错误和纰漏,也热诚欢迎读者朋友不吝指正! 5. MFC规则DLL 5.1 概述 MFC规则DLL的概念体现在两方面: (1) 它是MFC的 “是MFC
2006-08-05 22:11:00
1932
原创 VC++动态链接库(DLL)编程深入浅出(四)
MFC扩展DLL的内涵为MFC的扩展,用户使用MFC扩展DLL就像使用MFC本身的DLL一样。除了可以在MFC扩展DLL的内部使用MFC以外,MFC扩展DLL与应用程序的接口部分也可以是MFC。我们一般使用MFC扩展DLL来包含一些MFC的增强功能,譬如扩展MFC的CStatic、CButton等类使之具备更强大的能力。 使用Visual C++向导生产MFC扩展DLL时,MFC向导会自动
2006-08-05 22:11:00
2186
原创 深度解析VC中的消息传递机制(上)
摘要:Windows编程和Dos编程,一个很大的区别就是,Windows编程是事件驱动,消息传递的。所以,要学好Windows编程,必须对消息机制有一个清楚的认识,本文希望能够对消息的传递做一个全面的分析。 什么是消息? 消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉。一个消息,是系统定义的一个32位的值,他唯一的定义了一个事件,向Windows发出一个通知,告
2006-08-05 20:22:00
1891
转载 深度解析VC中的消息传递机制(下)
消息的接收 消息的接收主要有3个函数:GetMessage、PeekMessage、WaitMessage。 GetMessage原型如下:BOOL GetMessage(LPMSG lpMsg,HWND hWnd,UINT wMsgFilterMin,UINT wMsgFilterMax); 该函数用来获取与hWnd参数所指定的窗口相关的且wMsgFilterMin和wMsg
2006-08-05 20:19:00
1879
原创 解析VC++6中的指针
摘要:指针,在VC++中是很常见的,这里我们并不打算去详细讲解在C++中那样的指针用法(我们会有另外的文章去详细讨论),这里主要讲一下VC++中常见的对指针获取的方法,包括:工具条、状态条、控件和窗口的指针。 获取工具条的指针 在缺省状态下,有一个默认的工具条AFX_IDW_TOOLBAR,我们可以根据相应的ID去获取工具条指针,方法如下: CToolBar* pToo
2006-08-05 20:16:00
1541
原创 深度解析VC中的消息(下)
前面,我们分析了消息的基本理论和基本的函数及用法,接下来,我们将进一步讨论消息传递在MFC中的实现。MFC消息的处理实现方式 初看MFC中的各种消息,以及在头脑中根深蒂固的C++的影响,我们可能很自然的就会想到利用C++的三大特性之一:虚拟机制来实现消息的传递,但是经过分析,我们看到事情并不是想我们想象的那样,在MFC中消息是通过一种所谓的消息映射机制来处理的。 为什么呢?在潘爱民老师翻译
2006-08-05 20:09:00
1727
原创 深度解析VC中的消息(中)
队列消息和非队列消息 从消息的发送途径来看,消息可以分成2种:队列消息和非队列消息。消息队列由可以分成系统消息队列和线程消息队列。系统消息队列由Windows维护,线程消息队列则由每个GUI线程自己进行维护,为避免给non-GUI现成创建消息队列,所有线程产生时并没有消息队列,仅当线程第一次调用GDI函数数系统给线程创建一个消息队列。队列消息送到系统消息队列,然后到线程消息队列;非队列消息直接
2006-08-05 20:08:00
2162
1
原创 深度解析VC中的消息(上)
消息是指什么? 消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉。一个消息,是系统定义的一个32位的值,他唯一的定义了一个事件,向Windows发出一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。 消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如
2006-08-05 20:06:00
1630
转载 VC编写的DLL如何给VB返回字符串
VB中的字符串是用SysAllocString申请空间的,如果不想用COM的话把VC中的函数改为: EXTERN_C BSTR WINAPI RetStr() { char *str="1234567890"; return SysAllocString((BSTR)str); } 返回给VB后,VB会自动释放空间。
2006-08-05 20:03:00
3318
转载 学习开发DLL笔记
最近学习用VC来开发Win32 DLL,学了这几天,来作个总结。一、生成DLL1、用VC建立一个Win32DLL工程--DllTest,选上“导出符号”;2、在DllTest.cpp中编写导出函数Fun(),这个函数是别的程序要调用的函数:int fun(int i){return i*i;}3、在DllTest.h中声明导出这个函数:__d
2006-08-05 19:59:00
4497
原创 VC中DLL的创建及调用方法
1.DLL的创建首先,用VC集成开发界面中的“新建”,新建一个项目。无论是VC6.0还是VC.NET,都有建立DLL项目的选项。只不过有些稍有不同,例如VC.NET中就有ISAPI DLL,扩展存储过程DLL等,这些都不在讨论的范围。例如我们建立了一个用静态连接MFC库的DLL项目,名称为mydll然后,编辑mydll.cpp文件,在其中加入我们自己的函数void go()。注意,不需要在
2006-08-05 19:56:00
1725
原创 动态连接库(DLL)
把C++的类写进DLL里,单独的编译。程序运行时可以快速装载并连接到DLL上,这样叫做标准的模块软件。大大提高代码的重用型。DLL是运行时的模块。 Win32 DLL允许导出全局变量,就象导出函数一样。只要DLL申请内存,就从客户程序的进程的内存堆中进行内存分配。 DLL包含一个导出函数表,它包含了函数在DLL内的地址,但当客户程序装入DLL时并不知道要调用的函数地址,它是通过函数的符号化名
2006-08-05 19:48:00
1819
原创 VC++动态链接库(DLL)编程深入浅出(二)
4.非MFC DLL4.1一个简单的DLL 第2节给出了以静态链接库方式提供add函数接口的方法,接下来我们来看看怎样用动态链接库实现一个同样功能的add函数。 如图6,在VC++中new一个Win32 Dynamic-Link Library工程dllTest(单击此处下载本工程附件)。注意不要选择MFC AppWizard(dll),因为用MFC AppWizard(dll)建立的将是第5
2006-08-05 19:47:00
1015
原创 VC++动态链接库(DLL)编程深入浅出(一)
1.概论 先来阐述一下DLL(Dynamic Linkable Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿来用的变量、函数或类。在仓库的发展史上经历了“无库-静态链接库-动态链接库”的时代。静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib中的指令都被直接包含在最终生成的EXE文件中了。但是若使用DLL,该DLL不必
2006-08-05 19:45:00
1470
1
转载 用VC++5.0制作DLL经验一二
北京大唐电信软件中心 周志杰 本文一、二两部分适用于对DLL的基本制作方法已经了解,或手头有关于DLL制作方法的书籍的读者.对于初次接触DLL制作的读者,建议您先按三中的步骤建立一个自己的DLL并在另一个应用程序中成功的调用它之后再阅读一、二. DLL可以分为两个不同的类别:用C/C++(不用对象)编写的基于API的传统DLL和基于MFC对象的DLL. 一.两种类型的比
2006-08-05 19:44:00
1330
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人