
C/C++
文章平均质量分 60
andylin02
这个作者很懒,什么都没留下…
展开
-
视频捕获
一. 视频捕获快速入门 视频捕捉将一个视频流和音频流数字化, 然后存储在硬盘或其他存储介质上. 一个AVICap视窗口句柄描述了声频与视频流的细节, 这样就使你的应用程序从AVI文件格式, 声频视频缓冲管理, 低层声频视频驱动访问等等解脱出来, AVICap为应用程序提供了一个灵活的介面, 你可以仅仅使用如下几行代码就可以将视频捕捉加入你的程序:hWndC = capCreateCaptureW转载 2007-02-06 19:10:00 · 727 阅读 · 0 评论 -
内存管理
内存管理的概念 进程和内存空间进程: 一旦程序正在运行,它就叫进程,进程拥有它自己的内存,文件句柄及其他系统资源. Windows任务栏显示的是主窗口而不是进程,单个进程可能有几个主窗口,每个窗口都由它自己的线程支持.每个进程都具有它自己"私有"的4GB虚拟地址空间, 它包括:程序的EXE映像,所加载的任何非系统的DLL(包括MFC DLL),程序的全局数据,内丰映射文件等等.Windows95转载 2007-02-06 19:27:00 · 588 阅读 · 0 评论 -
对MFC封装Windows通讯API的研究
对MFC封装Windows通讯API的研究一、引言 近年来,利用Internet进行网际间通讯,在WWW浏览、FTP、Gopher这些常规服务,以及在网络电话、多媒体会议等这些对实时性要求严格的应用中成为研究的热点,而且已经是必需的了。Windows环境下进行通讯程序设计的最基本方法是应用Windows Sockets实现进程间的通讯,为此微软提供了大量基于Windows Socke转载 2007-02-06 19:34:00 · 941 阅读 · 0 评论 -
ATL
ATL自从1993年Microsoft首次公布了COM技术以后,Windows平台上的开发模式发生了巨大的变化,以COM为基础的一系列软件组件化技术将Windows编程带入了组件化时代。广大开发人员在为COM带来的软件组件化趋势欢欣鼓舞的同时,对于COM开发技术的难度和烦琐的细节也感到极其的不便。COM编程一度被视为一种高不可攀的技术,令人望而却步。开发人员希望能够有一种方便快捷的COM开发工转载 2007-02-06 20:58:00 · 626 阅读 · 0 评论 -
COM是更好的C++
COM是更好的C++C++:如果是静态连接的话,发布一个类库,此时类库的可执行代码将成为客户应用中不可分割的一部分。当三个应用程序都使用这个库时,那么每个可执行文件都包含类库代码。一旦类库厂商发现类库有一个缺陷后,发布一个新的类库,此时需要编译所有运用此类库的应用程序。应用程序A+CMath.obj应用程序B+CMath.obj应用程序C+CMath.obj DLL:转载 2007-02-06 21:06:00 · 616 阅读 · 0 评论 -
创建适用于多种容器的控件
创建适用于多种容器的控件 即使是一个符合OLE标准的控件,在不同的ActiveX容器里其行为也会偶尔不同。不能成功地适应容器之间的差别将严重影响控件在某些容器内的应用,甚至导致控件完全无法在个别容器使用。 本文讨论使用Visual C++创建控件时如何适应容器相关的需求,特别是为大范围内使用而开发ActiveX控件时必须执行的策略。例如,如何解决诸如许可、线程、内容检验、键盘事转载 2007-02-06 21:11:00 · 560 阅读 · 0 评论 -
巧妙实现超链接控制
巧妙实现超链接控制 我们用MFC开发应用程序时,通常在窗口中放置大量的控件,通过触发这些控件的事件来完成我们的控制。但并不是每个控件都提供所有的事件消息,例如我们在对话窗口中加入一个静态文本控件(CState类),这时在ClassWizard中此控件没有任何消息,也就无法完成所要求的控制。VC++中为我们提供了一个API函数GetWindowRect(),此函数可以获得窗口中所有控件的位置转载 2007-02-06 21:16:00 · 641 阅读 · 0 评论 -
实用技巧如何用VC++60编写查看二进制文件程序
实用技巧如何用VC++60编写查看二进制文件程序在计算机应用中,经常需要查看二进制文件的内容。目前,在各种VC++书籍中介绍查看文本文件的文章很多,但鲜有介绍查看二进制文件的文章。本文从功能设计、方案设计、编程实现以及技术要点等方面来简单介绍。1 功能设计显示界面见图1(略),将窗口客户区划分为三部分,左边列用于以16进制方式显示文件内容的相应位置,中间列用于以16进制方式显示文件内容,右转载 2007-02-06 21:21:00 · 924 阅读 · 0 评论 -
如何进行文件操作
如何进行文件操作 取得文件名 打开文件 移动文件指针 读写文件 关闭文件 取得文件名{ CString FilePathName; CFileDialog dlg(TRUE);///TRUE为OPEN对话框,FALSE为SAVE AS对话框 if(dlg.DoModal()==IDOK) FilePathName=dlg.GetP转载 2007-02-06 21:23:00 · 658 阅读 · 0 评论 -
如何在用户区显示一张位图
如何在用户区显示一张位图 显示一张位图,基本的有以下三种形式:一、位图资源的显示(设资源ID为IDB——BITMAP1程序如下){ CBitmap bitmap; CBitmap* pOldBitmap; CDC MemDC; MemDC.CreateCompatibleDC(&dc); ///建立与显示设备兼容的内存设备场境 bitmap.LoadBitmap(I转载 2007-02-06 21:24:00 · 651 阅读 · 0 评论 -
VC 杂记
关于VC的编译模式 有很多人问为什么VC编译出来的程序都要上兆。而且有些人还总结出条结论:VC做出的东西是又大又慢。其实这实在是冤枉了VC了。其实VC做的工程是个能包含多个子工程的工程文件。一般用AppWizard生成的工程里就包含了两个子工程:Win32 Debug工程和Win32Release工程。而缺省激活的工程是Win32 Debug工程,用这个子工程编译出来的执行文件由于包含大量的调试信转载 2007-02-06 21:35:00 · 823 阅读 · 0 评论 -
用MFC实现文件拖放到编辑框
用MFC实现文件拖放到编辑框 南京海军指挥学院黄向明 如图1和图2所示,这是两个支持将文件拖放到编辑框功能的对话框应用,这是一种实用性很强的功能,细心的读者还会发现这两个对话框是有一些区别的,其实这两个对话框无论是程序结构还是功能实现难易程度都有很大的区别。就从MFC编程角度看,这两个程序都很精彩,现分别介绍给读者。考虑到读者应该是比较熟练地使用VC++的,我对基本问题的实现只一带而过转载 2007-02-06 21:39:00 · 1233 阅读 · 0 评论 -
再谈用MFC实现文件拖放到编辑框
再谈用MFC实现文件拖放到编辑框 徐勇 前不久,看了南京海军指挥学院黄向明同学发表的“用MFC实现文件拖放到编辑框”一文后,对其最后提出的问题很感兴趣,我就查了一下vc的msdn帮助,发现DragAcceptFiles()也是CWnd类的成员函数,既然如此,想来只要是CWnd类的派生类,就应该可以用DragAcceptFiles()函数来向windows文件管理器注册自己成为被拖动文件的转载 2007-02-06 21:41:00 · 739 阅读 · 0 评论 -
菜单填加位图和状态栏的操作
如何用VC在菜单中增加位图或图标 我们在使用Windows95时,可以注意到在“开始”组中的菜单项前都有一个图标,而且在Word97中的菜单项前也有一个图标。这些图标不但让我们清楚地了解到屏幕上的各种工具按钮与各个菜单项之间的联系,而且还增加了应用程序界面的美观。那么,请问如何用VC在应用程序菜单中增加图标?MFC的CMenu类有一个成员函数SetMenuItemBitmaps,可以用于往菜转载 2007-02-06 21:44:00 · 651 阅读 · 0 评论 -
在VC中使用ADO开发数据库应用程序
在VC中使用ADO开发数据库应用程序 张立、张如 1.引入ADO库文件使用ADO前必须在工程的stdafx.h文件里用直接引入符号#import引入ADO库文件,以使编译器能正确编译。代码如下所示:#import "c:/program files/common files/system/ado/msado15.dll"no—namespaces rename("EOF" adoEOF")这行转载 2007-02-06 21:45:00 · 776 阅读 · 0 评论 -
在VC++6.0开发中实现全屏显示
在VC++6.0开发中实现全屏显示 (广东 粟利民 孙强) 全屏显示是一些应用软件程序必不可少的功能。比如在用VC++编辑工程源文件或编辑对话框等资源时,选择菜单“View/转载 2007-02-07 20:46:00 · 892 阅读 · 0 评论 -
模板,软件开发中的应用
模板,软件开发中的应用 自六十年代中期到七十年代人们感觉到“软件危机”以来,软件工程也已经经理了整整35个年头了;然而,手工作仿式的软件开发形式在这儿依旧那么严重,而更让不解的是,每个人工作已经相当一段时间了,竟然没有去尝试着寻求新的解决方法(已经被别人用过很多次的方法);结合于实际情况谈一谈自己几年来的软件开发经验,以便于和更多的同道中人交流;应该具转载 2007-02-07 22:25:00 · 523 阅读 · 0 评论 -
标准模板库(STL)介绍(上)
标准模板库(STL)介绍(上)作者: winter 作者:Scott Field 本文以List容器为例子,介绍了STL的基本内容,从容器到迭代器,再到普通函数,而且例子丰富,通俗易懂。不失为STL的入门文章,新手不容错过! 这篇文章是关于C++语言的一个新的扩展——标准模板库的(Standard Template Library),也叫STL。 当我第一次打算写一篇关于S转载 2007-02-08 21:16:00 · 561 阅读 · 0 评论 -
标准模板库(STL)介绍(下)
标准模板库(STL)介绍(下)作者: winter 作者:Scott Field 。 本文以STL容器list为例,介绍了find()函数、sort()函数,search()函数,splice()函数等,由浅入深,把list的用法和相关通用函数的用法做了详细介绍。 使用STL通用算法find()在list中查找对象 我们如何在list中查找东西呢?STL的通用算法find()和find转载 2007-02-08 21:17:00 · 607 阅读 · 0 评论 -
STL实践指南
STL实践指南 作者 Jeff Bogan介绍这是一篇指导您如何在Microsoft Visual Studio下学习STL并进行实践的文章。这篇文章从STL的基础知识讲起,循序渐进,逐步深入,涉及到了STL编写代码的方法、STL代码的编译和调试、命名空间(namespace)、STL中的ANSI / ISO字符串、各种不同类型的容器(container)、模板(template)、游标(I转载 2007-02-08 21:19:00 · 557 阅读 · 0 评论 -
C++之父Bjarne谈C++中的STL模板
C++之父Bjarne谈C++中的STL模板 在1994年,我主要关心的是如何使ISO C++标准尽可能地好--同时在它所包含的特性和规范的质量两个方面--并获得多数人的同意。即使人们不接受某种规范,也不会影响它(规范)的良好性。ISO标准没有强制力,因此有些人认为自己不值得浪费时间来适应它,除非(群体)社团的压力能够使他们确信该规范的价值。对于一个实现者来说,适应环境是很重要的额外工转载 2007-02-10 10:13:00 · 706 阅读 · 0 评论 -
使用MFC快速实现网络编程
使用MFC快速实现网络编程 随着计算机网络化的深入,计算机网络编程在程序设计的过程中变得日益重要。由于C++语言对底层操作的优越性,许多文章都曾经介绍过用VC++进行Socket编程的方法。但由于都是直接利用动态连接库wsock32.dll进行操作,实现比较繁琐。其实,VC++的MFC类库中提供了CAsyncSocket这样一个套接字类,用他来实现Socket编程,是非常方便的。 本文将转载 2007-02-06 19:29:00 · 624 阅读 · 0 评论 -
用VC++6.0编写Proxy服务器
用VC++6.0编写Proxy服务器 本人在用Oicq聊天时,经常收到一些好友发给我的用文本符号描绘的图像,觉得好羡慕啊,于是一想何我们一般常用的Internet代理服务器是用微软的Proxy Server 2.0 。但我们可以自己动手编写一个简单、小型的Proxy Server 。下面介绍具体的实现方法。 一. 原理 本程序的结构原理如下: 对于每一个用户的请求(Internet 请转载 2007-02-06 20:37:00 · 649 阅读 · 0 评论 -
实现热键激活后台进程
实现热键激活后台进程 在DOS下编写常驻内存的应用(TSR)程序时,一般设置了热键激活方式,DOS用户对此非常熟悉。在Windows 9X环境下,有的时侯前台运行程序隐藏了Windows的任务栏,使用户不能切换,许多Game程序运行时便是如此。如果在你的后台进程中加入热键呼出功能,便无此虑了。 程序实现原理:首先用户预定一个转载 2007-02-06 21:47:00 · 696 阅读 · 0 评论 -
STL简介
STL简介一、STL简介STL(Standard Template Library,标准模板库)是惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。现在虽说它主要出现在C++中,但在被引入C++之前该技术就已经存在了很长的一段时间。STL的代码从广义上讲分为三类:algorithm(转载 2007-02-07 22:37:00 · 597 阅读 · 0 评论 -
三十分钟掌握STL
三十分钟掌握STL这是本小人书。原名是《using stl》,不知道是谁写的。不过我倒觉得很有趣,所以化了两个晚上把它翻译出来。我没有对翻译出来的内容校验过。如果你没法在三十分钟内觉得有所收获,那么赶紧扔了它。文中我省略了很多东西。心疼那,浪费我两个晚上。译者:karycontact:karymay@163.netSTL概述STL的一个重要特点是数据结构和算法的分离。尽管这是个转载 2007-02-08 21:21:00 · 949 阅读 · 3 评论 -
用C写的邮件发送程序
编程环境:WinXP SP2,Visual Studio 2005 Pro参考资料:《HowTo.SMTP》,《SendMail》(NextFly写的),《MSDN 2005》// SendMail.cpp : 定义控制台应用程序的入口点。//#i nclude "stdafx.h"#i nclude #i nclude #i nclude #pragma comment(转载 2007-02-13 13:54:00 · 858 阅读 · 0 评论 -
基于Visual Studio 2003/2005的Office插件开发FAQ
基于Visual Studio 2003/2005的Office插件开发FAQ 最近处理了好几个Office Addin的问题,总结出一些经验,在此与大家分享一下。首先介绍一些注意点1. 一定要把宏安全级别设置为Medium以下,默认是High,肯定不允许运行任何Addin,这点一定要注意,否则再怎么改程序也是徒劳2. 在开发Addin的机器上,建议仅安装一个版本的Office,否则可能转载 2007-02-27 09:43:00 · 651 阅读 · 0 评论 -
ShellExecute
介绍一个功能强大的API函数 ShellExecute 编译 赵湘宁 问题的提出: 我使用MFC编写一个APP,要求About对话框中显示LOGO、公司名、地址和公司的URL链接。使用户点击URL链接以后,启动浏览器访问Web页面,这种对话框中的热链接使应用程序增色不少。我琢磨的方法是从系统注册表中通过查找.htm 或 .html文件的关联程序来获得缺省浏览器的名字,这样好象有很多工作转载 2007-02-07 20:58:00 · 776 阅读 · 0 评论 -
走近 STL
走近 STL作者:陶汉军 本文面向的读者:学习过C++程序设计语言(也就是说学习过Template),但是还没有接触过STL的STL的初学者。这实际上是我学习STL的一篇笔记,老鸟就不用看了。什么是泛型程序设计 我们可以简单的理解为:使用模板的程序设计就是泛型程序设计。就像我们我们可以简单的理解面向对象程序设计就是使用虚函数的程序设计一样。STL是什么 作为一个C++程序设计者,STL是一转载 2007-02-08 18:17:00 · 725 阅读 · 0 评论 -
Introduction to STL, Standard Template Library
Introduction to STL, Standard Template LibraryBy Scott Field--------------------------------------------------------------------------------This article is about a new extension to the C++ languag转载 2007-02-08 21:15:00 · 655 阅读 · 0 评论 -
封装控制面板函数 CCPApplet
封装控制面板函数 CCPApplet 编译 赵湘宁 Q 在编写一个Windows 98 和 Windows 2000 中使的MPEG播放器时,我想创建一个控制面板应用程序以便使用户可以改变播放器的基本配置。我知道应该创建一个DLL动态库,但接口是用C写的。如何利用C++和MFC实现?A 不要忘了:C++就是C。所以,用C做的任何东西从某种意义上来说就是C++。但是如何解决你所遇到的问题呢?为此我转载 2007-02-07 20:55:00 · 665 阅读 · 0 评论 -
引用与指针的区别
引用与指针的区别: 常常有人问引用与指针的区别,可能是指针和引用在功能上的相似,而是他们混淆这两个概念。现在总结以下二者的区别,希望大家能彻底弄清这两个概念根本性的差别: 1. 引用,一个变量的别名,为什么引入别名呢?原因是我们想定义一个变量,他共享另一个变量的内存空间,使用别名无疑是一个好的选择。变量是什么?是一个内存空间的名字,如果我们给这个内存空间在转载 2007-02-13 10:55:00 · 664 阅读 · 0 评论 -
C语言与汇编语言的相互调用
C语言与汇编语言的相互调用 C语言是目前非常流行的一种编程语言,除具有高级语言使用方便灵活、数据处理能力强、 编程简单等优点外,还可实现汇编语言的大部分功能,如可直接对硬件进行操作、生成的 目标代码转载 2007-02-13 13:22:00 · 917 阅读 · 0 评论 -
Windows 进程
系统进程 [system process] alg.exe csrss.exe ddhelp.exe dllhost.exe explorer.exe inetinfo.exe internat.exe kernel32.dll lsass.exe mdm.exe mmtask.tsk mprexe.exe msgsrv32.exe mstask.exe regsvc.exe rpcss.exe转载 2007-02-27 18:41:00 · 761 阅读 · 0 评论 -
Visual C++DLL编程实现
Visual C++DLL编程实现 自从微软推出16位的Windows操作系统起,此后每种版本的Windows操作系统都非常依赖于动态链接库(DLL)中的函数和数据,实际上Windows操作系统中几乎所有的内容都由DLL以一种或另外一种形式代表着,例如显示的字体和图标存储在GDI DLL中、显示Windows桌面和处理用户的输入所需要的代码被存储在一个User DLL中、Windo转载 2007-02-27 18:42:00 · 619 阅读 · 0 评论 -
Windows中删除文件夹
#include #include #include using namespace std;BOOL DelDir(char *szDir){ WIN32_FIND_DATA FindFileData; HANDLE hFind; char szDirName[300] = "/0"; char szFileName[300] = "/0"; sprintf(szDirName, "转载 2007-02-27 18:44:00 · 583 阅读 · 0 评论 -
C 提高篇
C 提高篇★本吧推荐的几个C编译器:http://post.baidu.com/f?kz=2769360◆本吧代码格式编辑器:http://post.baidu.com/f?kz=9364381◆二进制文件与文本文件的转换:http://post.baidu.com/f?kz=21576218◆本吧代码中显示?:http://post.baidu.com/f?kz=5054984◆C/C转载 2007-03-02 23:59:00 · 944 阅读 · 0 评论 -
Updating Resources
Updating ResourcesThe following example copies a dialog box resource from one executable file, Hand.exe, to another, Foot.exe, by following these steps: Use the LoadLibrary function to load转载 2007-02-26 17:49:00 · 648 阅读 · 0 评论 -
C++回调函数(callback)与仿函数(functor)的异同
C++回调函数(callback)与仿函数(functor)的异同许式伟 (版权声明)2007-3-3回调函数(callback)与仿函数(functor)很多时候从用途上来看很相似,以致于我们经常将它们相提并论。例如:inline bool compare(int a, int b){ return a > b;} struct comparer { bool operator()转载 2007-03-06 09:58:00 · 622 阅读 · 0 评论