自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

转载 安装和使用Windows Wget版本1.10.2

安装和使用Windows Wget版本1.10.2说明Wget首页:http://wget.sunsite.dk/ Windows Wget版本1.10.2首页:http://www.christopherlewis.com/WGet/WGetFiles.htm Windows Wget版本1.10.2下载http://www.christopherlewis.com/WGet/w

2008-09-01 16:51:00 5438

原创 Microsoft Visual C++ Guide(在window下用vc编译wxWidget)

Microsoft Visual C++ GuideFrom WxWiki(Redirected from MSVC)Jump to: navigation, searchThis guide outlines the steps for building the wxWidgets library, building and running the included samp

2008-07-16 19:59:00 6662

转载 如何使用InstallShield8.0制作自己的安装程序

本篇文档会告诉你如何使用InstallShield开发平台来创建,编译,运行一个安装程序。在这篇文档中你会学习到安装过程中碰到的下面一些内容:加载安装文件,设置快捷方式,修改注册表,条件安装一些文件,注册com组件,更换安装界面,调试以及发布安装程序。  本篇文档主要分下面的6个部分内容:  创建,编译,测试安装的工程  设置快捷方式以及修改注册表  注册COM组件  Cond

2007-09-07 22:28:00 1160

转载 MFC教程(14)-- SOCKET类的设计和实现

WinSock基本知识  这里不打算系统地介绍socket或者WinSock的知识。首先介绍WinSock API函数,讲解阻塞/非阻塞的概念;然后介绍socket的使用。  WinSock API  Socket接口是网络编程(通常是TCP/IP协议,也可以是其他协议)的API。最早的Socket接口是Berkeley接口,在Unxi操作系统中实现。WinSock也是一个基于Sock

2007-09-05 15:49:00 1129

转载 MFC教程(13)-- MFC工具条和状态栏(2)

消息WM_POPMESSAGESTRING用来重新设置状态栏。  这两个消息对应的消息处理函数分别是OnSetMessageString和OnPopMessageString,OnSetMessageString和OnPopMessageString分别实现如下:OnSetMessageStringLRESULT CFrameWnd::OnSetMessageString(WPARAM w

2007-09-05 15:45:00 2115

转载 MFC教程(13)-- MFC工具条和状态栏(1)

Windows控制窗口  Windows (Windows95或者以上版本) 提供了系列通用控制窗口,其中包括工具条(ToolBar)、状态栏(StatusBar)、工具条提示窗口(ToolTip)。  Windows在一个DLL加载时注册个控制窗口的“窗口类”。例如,工具条的“窗口类”是“ToolbarWindow32”,状态栏的“窗口类”是“msctls_statusbar32”,工具

2007-09-05 15:34:00 1809

转载 MFC教程(12)-- 对话框和对话框类CDialog(2)

RunModalLoop是一个实现自己的消息循环的示例,消息循环的条件是模式化状态没有结束。实现线程自己的消息循环见8.5.6节。当用户按下按钮“取消”、“确定”时,将导致RunModalLoop退出消息循环,结束对话框模式状态,并调用::EndDialog关闭窗口。有关关闭对话框的处理如下:void CDialog::EndDialog(int nResult){ASSERT(::IsWindo

2007-09-05 15:29:00 2493

转载 MFC教程(12)-- 对话框和对话框类CDialog(1)

对话框经常被使用,因为对话框可以从模板创建,而对话框模板是可以使用资源编辑器方便地进行编辑的。  模式和无模式对话框  对话框分两种类型,模式对话框和无模式对话框。  模式对话框  一个模式对话框是一个有系统菜单、标题栏、边线等的弹出式窗口。在创建对话框时指定WS_POPUP, WS_SYSMENU, WS_CAPTION和 DS_MODALFRAME风格。即使没有指定WS_VIS

2007-09-05 15:26:00 2062

转载 MFC教程(11)-- MFC下的文件类

文件操作的方法  使用Visual C++编程,有如下方法进行文件操作:  (1)使用标准C运行库函数,包括fopen、fclose、fseek等。  (2)使用Win16下的文件和目录操作函数,如lopen、lclose、lseek等。不过,在Win32下,这些函数主要是为了和Win16向后兼容。  (3)使用Win32下的文件和目录操作函数,如CreateFile,CopyFi

2007-09-05 15:22:00 838

转载 MFC教程(10)-- 内存分配方式和调试机制

M内存分配  内存分配函数  MFCWin32或者C语言的内存分配API,有四种内存分配API可供使用。  Win32的堆分配函数  每一个进程都可以使用堆分配函数创建一个私有的堆──调用进程地址空间的一个或者多个页面。DLL创建的私有堆必定在调用DLL的进程的地址空间内,只能被调用进程访问。  HeapCreate用来创建堆;HeapAlloc用来从堆中分配一定数量的空间,H

2007-09-05 15:21:00 1118

转载 MFC教程(9)-- MFC的进程和线程(2)

下面以一个动态链接到MFC DLL的单模块应用程序为例,说明这些对象的创建过程。  当第一次访问状态信息时,比如使用 AfxGetModuleState得到模块状态,导致系列创建过程的开始,如图9-7所示。  首先分析语句pState=_afxThreadState。如果_afxThreadData、线程状态和模块状态还没有创建,该语句可以导致这些数据的创建。  pState声明为

2007-09-05 15:16:00 1618

转载 MFC教程(9)-- MFC的进程和线程(1)

MFC定义了多种状态信息,这里要介绍的是模块状态、进程状态、线程状态。这些状态可以组合在一起,例如MFC句柄映射就是模块和线程局部有效的,属于模块-线程状态的一部分。  模块状态   这里模块的含义是:一个可执行的程序或者一个使用MFC DLL的DLL,比如一个OLE控件就是一个模块。  一个应用程序的每一个模块都有一个状态,模块状态包括这样一些信息:用来加载资源的 Windows实例

2007-09-05 00:34:00 1150

转载 MFC教程(8)-- MFC的进程和线程

Win32的进程和线程概念  进程是一个可执行的程序,由私有虚拟地址空间、代码、数据和其他操作系统资源(如进程创建的文件、管道、同步对象等)组成。一个应用程序可以有一个或多个进程,一个进程可以有一个或多个线程,其中一个是主线程。  线程是操作系统分时调度分配CPU时间的基本实体。一个线程可以执行程序的任意部分的代码,即使这部分代码被另一个线程并发地执行;一个进程的所有线程共享它的虚拟地址空

2007-09-05 00:17:00 871

转载 MFC教程(7)-- MFC的DLL

一般的,在介绍Windows编程的书中讲述DLL的有关知识较多,而介绍MFC的书则比较少地提到。即使使用MFC来编写动态链接库,对于初步接触DLL的程序员来说,了解DLL的背景知识是必要的。另外,MFC提供了新的手段来帮助编写DLL程序。所以,本节先简洁的介绍有关概念。  DLL的背景知识   静态链接和动态链接   当前链接的目标代码(.obj)如果引用了一个函数却没有定义它,链接程

2007-09-04 23:59:00 862

转载 MFC教程(6)-- 应用程序的退出

一个Windows应用程序启动之后,一般是进入消息循环,等待或者处理用户的输入,直到用户关闭应用程序窗口,退出应用程序为止。  例如,用户按主窗口的关闭按钮,或者选择执行系统菜单“关闭”,或者从“文件”菜单选择执行“退出”,都会导致主窗口被关闭。  当用户从“文件”菜单选择执行“退出”时,将发送MFC标准命令消息ID_APP_EXIT。MFC实现了函数CWinApp::OnAppExit(

2007-09-04 23:56:00 983

转载 MFC教程(5)-- MFC对象的创建(2)

从这些图中可以看到何时、何处调用了什么消息处理函数和虚拟函数,这些函数用来作了什么事情。必要的话,程序员可以在派生类覆盖它们。  在创建工作完成之后,进行初始化,使用文档对象的数据来更新视和显示窗口。  至此,本节描述了MFC的SDI程序从分析命令行到创建或打开文件的处理过程,文档对象已经动态创建。总结如下:  命令行分析→应用程序的FileNew→文档模板的OpenDocumentF

2007-09-04 23:45:00 1756

转载 MFC教程(5)-- MFC对象的创建(1)

MFC对象的创建  前面几章介绍了MFC的核心概念和思想,即介绍了MFC对Windows对象的封装方法和特点;MFC对象的动态创建、序列化;MFC消息映射机制。  现在,考查MFC的应用程序结构体系,即以文档-视为核心的编程模式。学习本章,应该弄清楚以下问题:  MFC中诸多MFC对象的关系:应用程序对象,文档对象,边框窗口对象,文档边框窗口对象,视对象,文档模板对象等。  MFC

2007-09-04 23:40:00 1107

转载 MFC教程(4)-- 消息映射的实现(2)

但是在当前例子中,当前对象的类CTview没有覆盖该函数,所以CWnd的WindowProc被调用。  这个函数把下一步的工作交给OnWndMsg函数来处理。如果OnWndMsg没有处理,则交给DefWindowProc来处理。  OnWndMsg和DefWindowProc都是CWnd类的虚拟函数。  OnWndMsg的原型如下:   BOOL CWnd::OnWndMsg( U

2007-09-04 23:35:00 1603

转载 MFC教程(4)-- 消息映射的实现(1)

消息映射的实现  Windows消息概述   Windows应用程序的输入由Windows系统以消息的形式发送给应用程序的窗口。这些窗口通过窗口过程来接收和处理消息,然后把控制返还给Windows。  消息的分类     队列消息和非队列消息   从消息的发送途径上看,消息分两种:队列消息和非队列消息。队列消息送到系统消息队列,然后到线程消息队列;非队列消息直接送给目的

2007-09-04 23:14:00 883 1

转载 MFC教程(3)-- CObject类

CObject是大多数MFC类的根类或基类。CObject类有很多有用的特性:对运行时类信息的支持,对动态创建的支持,对串行化的支持,对象诊断输出,等等。MFC从CObject派生出许多类,具备其中的一个或者多个特性。程序员也可以从CObject类派生出自己的类,利用CObject类的这些特性。  本章将讨论MFC如何设计CObject类的这些特性。首先,考察CObject类的定义,分析其结构

2007-09-04 23:10:00 949

转载 MFC教程(2)-- MFC和Win32

MFC Object和Windows Object的关系  MFC中最重要的封装是对Win32 API的封装,因此,理解Windows Object和MFC Object (C++对象,一个C++类的实例)之间的关系是理解MFC的关键之一。所谓Windows Object(Windows对象)是Win32下用句柄表示的Windows操作系统对象;所谓MFC Object (MFC对象)是C++

2007-09-04 23:07:00 821

转载 MFC教程(1)--MFC概述

MFC是一个编程框架  MFC (Microsoft Foundation Class Library)中的各种类结合起来构成了一个应用程序框架,它的目的就是让程序员在此基础上来建立Windows下的应用程序,这是一种相对SDK来说更为简单的方法。因为总体上,MFC框架定义了应用程序的轮廓,并提供了用户接口的标准实现方法,程序员所要做的就是通过预定义的接口把具体应用程序特有的东西填入这个轮廓。

2007-09-04 23:00:00 924

转载 MFC学习内容简介!

教程列表:MFC教程(1)--MFC概述  MFC是一个编程框架   MFC (Microsoft Foundation Class Library)中的各种类结合起来构成了一个应用程序框架,它的目的就是让程序员在此基础上来建立Windows下的应用程序,这是一种相对SDK来说更为简单的方法。因为总体上,MFC框架定义了应用程序的轮廓,并提供了用户接口的标准实现方法,程序员所要做的就是通过

2007-09-04 22:52:00 1353

原创 在已经建好的工程项目中需要添加BCG功能!

Getting Started BCGControlBar Library Professional Edition installation: 整个库的源代码安装在/BCGCBPro 目录下面.可执行文件(*.dll)安装在 /Bin (for VisualStudio 6.0) 或/Bin7 (for VisualStudio .NET)下面。请在你的源代码中做如下的改变:

2007-08-16 11:16:00 4370 1

翻译 利用BCG的应用程序向导开发自己的应用程序!

你可以利用BCG的应用程序向导生成一个能在BCGControlBar 库支持下的完全功能的应用程序.以这个程序为基础你还可以开发出更加完善的应用程序.当你新建一个新的工程时,请选择 "BCG Control Bar Application Wizard".  它将从MFC AppWizard开始创建一个应用程序的框架. 从7-10步将是BCGControlBar  的特殊设置。.Step

2007-08-16 09:36:00 3767

转载 CArchive详解(转)

CArchive原理posted on 2005年1月18日 21:39 由 devzhao 一.概述 CArchive使用了缓冲区,即一段内存空间作为临时数据存储地,对CArchive的读写都先依次排列到此缓冲区,当缓冲区满或用户要求时,将此段整理后的数据读写到指定的存储煤质。 当建立CArchive对象时,应指定其模式是用于缓冲区读,还是用于缓冲区写。 可以这样理解,

2007-08-14 14:10:00 2027

原创 Big Endian 和 Little Endian [转]

Big Endian 和 Little Endian [转] powerpc 发表于 2005-5-5 15:25:00 谈到字节序的问题,必然牵涉到两大CPU派系。那就是Motorola的PowerPC系列CPU和Intel的x86系列CPU。PowerPC系列采用big endian方式存储数据,而x86系列则采用little endian方式存储数据。那么究竟什么是big endian,

2007-08-13 21:20:00 526

转载 有关SizeOf的大小问题

typedef  struct  tagSocketData  {    BYTE          nSize;     BYTE          nType;     DWORD        nDataSize;     DWORD        nIndex;     SOCKET      socket;     DWORD        nDataLength;  }  SOCKET

2007-08-13 20:55:00 563

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除