自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(173)
  • 资源 (8)
  • 收藏
  • 关注

转载 如何让你的程序安全通过windows防火墙

大家开发网络程序,经常要连接其他主机,如果在xp上运行,一定会提示你,只有选择解除阻止才能实现正常的网络连接.那么有没有办法在防火墙的例外列表里面通过编程的方式加入自己的程序呢? 当然有了,不然就不要介绍了xp的系统目录下面有个hnetcfg.dll就是这个编程接口,头文件是netfw.h,初始化代码如下:INetFwProfile* m_pFireWallProfile=NULL; HR

2009-03-11 22:21:00 1383

转载 无须SMTP服务器中转直接将电子邮件发送到对方邮箱

前言大家一定熟悉Foxmail中的“特快专递”,它能直接将电子邮件发送到对方的邮件服务器中,而不需要经过SMTP服务器中转,这样做有什么好处?第一:发送速度比较快,不需要等SMTP服务器对邮件进行查毒、派发、验证;第二:你可以及时掌握邮件是否发送成功的信息。有时我们用Outlook发送一封邮件,到第二天对方都没收到,可我这边确实已经发送成功了,只好让对方多收几次,到了第三天SMTP服务器回信说

2009-03-07 04:54:00 15926

转载 C++资源之不完全导引

1,前言  无数次听到“我要开始学习C++!”的呐喊,无数次听到“C++太复杂了,我真的学不会”的无奈。Stan Lippman先生曾在《C++ Primer》一书中指出“C++是最为难学的高级程序设计语言之一”,人们常将“之一”去掉以表达自己对C++的敬畏。诚然,C++程序设计语言对于学习者的确有很多难以逾越的鸿沟,体系结构的庞大,应接不暇并不断扩充的特性……除此之外,参考资料之多与冗杂使它

2009-03-07 04:52:00 1093

转载 Little endian and big endian大端小端

一、基本概念位的概念:在计算机中,一个0或1称为一位(bit)。字节:连续的八位称为一个字节(Byte),字节是计算机中可单独处理的最小单位。即以字节为基本单位来解释信息,规定1个字节是8个二进制位。通常1个ASCII码用1个字节存放,1个汉字用2个字节存放,双精度浮点实数用8个字节存放。下面列表C语言中定义类型所占字节以及数据范围。类型标识符         类型说明    长度

2009-02-05 03:22:00 901

转载 MFC APPWizard的原理与MFC程序框架的剖析

 AppWizard是一个源代码生成工具,是计算机辅助程序设计工具.设计一个Test工程,则会产生类:CAboutDlg:帮助CMainFrame:由CFrameWnd派生出来,CFrameWnd是基础类库的一个类,是由CWnd派生出来的,窗口类,框架窗口。CTestApp:由CWinApp派生出来,窗口对象CTestDoc:由CDocument派生出来,是文档类,用于存储加载数据。而View用于

2009-02-05 02:50:00 1432

转载 窗口置顶

 置顶的方法其实很多人都知道。写这个的原因是我本来以为taskmgr有什么特殊之处,因为我即使把自己的窗口置顶,它也能跑到我的窗口的上面。花了好几个小时去研究,结果让人很郁闷:taskmgr其实就简单的进行了下面这么个调用:::SetWindowPos( AfxGetMainWnd()->m_hWnd,   HWND_TOPMOST,  0,   0,   0,   0,   SWP_NOSI

2009-01-31 15:34:00 965

原创 休闲网络游戏设计

1、棋类游戏设计棋类游戏的主要代表作有:军棋、中国象棋、围棋。(一)游戏介绍这3种游戏在中国可以说是源远流长,中国象棋、围棋的参与人数是2人,而军棋可以2人或者4人一起玩。军棋:一种拥有广泛群众基础的常见棋,同样是通过以大吃小及杀死关键子的规则进行游戏。本来这种棋是需要第三方裁判帮助游戏,而游戏系统则代替之成为公正裁判。由于各地规则不一,所以在规则的选择上,需要选择最广为接受的一套规则。中国象棋:

2009-01-28 16:05:00 1548

原创 游戏服务器引擎设计

一般来说,现在网络游戏的服务器设计大致分为以下三大类:1:单服务器结构2:多服务器结构. (根据服务器负责功能不同,有按地图范围进行划分的服务器设计,有按功能划分的服务器设计)3:分布式服务器结构.一:单服务器结构在比较起先的MMORPG游戏中,大部分使用的是单服务器结构,一台服务器容纳人数大约为1500-2000人左右,根据硬件不同和游戏需要涉及的AI,逻辑等复杂度不同会有少许出入.但是这种方式

2009-01-28 15:56:00 1220

原创 16×16的免费图标SILK

2009-01-23 01:45:00 698

转载 堆和栈的区别

一、预备知识—程序的内存分配 由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack): 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap): 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。 3、全局区(static): 全局变量和静态变量的存储

2009-01-23 01:41:00 652

转载 循环导入excel文件到SQL Server 2005

关于循环导入excel文件到SQL Server 2005http://topic.csdn.net/u/20081125/18/9007115f-b276-4ca6-b3a7-12db9aa983d5.html/*一个目录中有多个Excel文件,每个EXCEL文件中有不定个数的工作表,工作表名称也可能不同,但是每个工作表的结构是相同的,所有文件中的工作表都导入同一个表中。如何实现? 我现在采用两

2009-01-20 18:13:00 1063

转载 SQL SERVER 与ACCESS、EXCEL的数据转换

SQL SERVER 与ACCESS、EXCEL的数据转换熟悉SQL SERVER 2000的数据库管理员都知道,其DTS可以进行数据的导入导出,其实,我们也可以使用Transact-SQL语句进行导入导出操作。在Transact-SQL语句中,我们主要使用OpenDataSource函数、OPENROWSET 函数,关于函数的详细说明,请参考SQL联机帮助。利用下述方法,可以十分容易地实现SQL

2009-01-20 18:12:00 628

转载 使用 OpenRowSet 和 OpenDataSource 访问 Excel 97-2007

使用 OpenRowSet 和 OpenDataSource 访问 Excel 97-2007测试文件:D:/97-2003.xls和D:/2007.xlsx,两个文件的内容是一模一样的。测试环境:SQL Server 2000 / 2005。接口类型 语法一览 注册表设置 单一数据类型列的类型解析 混合数据类型列的自然解析 混合数据类型列的强制解析——IM

2009-01-20 18:10:00 1106

转载 基于消息驱动的面向对象通用C/S应用框架(12)

2.7 消息处理器接口、实现及其注册        消息分发框架应该支持用户定义一个或多个消息处理器类,因为用户的业务消息可能需要分类处理,比如把逻辑相关的消息进行分组,每组消息定义一个消息处理器。对于框架来说,需要一个消息处理器的公共接口和一个消息处理器列表,因为这种情况最适合使用C++的多态机制了。        最容易想到的方法是在MessageProcessor接口中声明一个p

2009-01-17 16:54:00 1183

转载 基于消息驱动的面向对象通用C/S应用框架(十一

2.6 消息分发器        从图2-2和NetworkObserverImpl的实现可以看出,该框架由位于框架层中的一个独立的消息分发线程来驱动,它统一分发所有的半结构化消息,不论该消息是来自于网络还是本地事件。由于每一个消息都赋予了唯一的消息ID,且通信层上报的消息都完成了消息头的解析,所以在此基础上可以基于消息ID和消息映射表来分发。很显然,应该让分发线程持有一个半结构化消息队列和一

2009-01-17 16:53:00 783

转载 基于消息驱动的面向对象通用C/S应用框架(十)

2.5 半结构化消息解析器接口及其实现        现在来看如何解析XML消息和二进制消息。        XMLMessageParser和BinMessageParser是接口HalfStructuredMessageParser的实现类,它们的关系如下图所示: 图2-5 半结构化消息解析器类层次结构         半结构化消息解析器接口HalfStructur

2009-01-17 16:52:00 739

转载 基于消息驱动的面向对象通用C/S应用框架(八)

2.3 业务消息格式框架        不论使用二进制消息格式还是文本消息格式例如XML消息,消息分发框架都是建立在固定的消息头内容的基础之上的,因为只要解析出消息头就完全可以进行消息分发了。一般来说,消息头至少包含以下内容:消息类型、消息ID、消息序列号。为了满足将来业务功能的扩展需要(比如可令服务器作为一个消息转发中心,将某些前台客户端发来的业务消息转发给另外一些后台客户端,后台客户端

2009-01-17 16:51:00 776

转载 基于消息驱动的面向对象通用C/S应用框架(九)

2.4 NetworkObserver接口实现        有了消息格式作为基础,就可以实现半结构化消息解析器和接口NetworkObserver了。通信层和框架之间的NetworkObserver接口显然是使用了Observer设计模式。        我们先来看它的实现类定义:class NetworkObserverImpl : public Network

2009-01-17 16:51:00 732

转载 基于消息驱动的面向对象通用C/S应用框架(七)

2.2 消息驱动框架的基本结构        既然是以客户端和服务器端之间的消息传递为基础,那么对于任何一端来说,首先我们要从网络上将消息接收下来,当然前提是对端先发出消息。客户端和服务器具体如何接收及发送消息,这是通信层的事情,我们将在第3章“基于Stream Socket的面向对象网络通信组件”中专门进行详细介绍,所以这里可先假定业务消息已经成功接收下来。        通过在通信

2009-01-17 16:50:00 745

转载 基于消息驱动的面向对象通用C/S应用框架(六)

从本章开始,将全面介绍这个基于业务消息驱动的框架的各个细节。第2章基于消息驱动的通用C/S应用框架设计和实现          内容简介:       本章重点阐述作者设计和开发的一个基于业务消息驱动的面向对象通用C/S(客户机/服务器)应用框架的设计思想和实现细节,并且在具体阐述时尽量使各节的编排顺序与实际开发时的顺序保持一致,按照消息接收、解析、分发和处理的流程逐步

2009-01-17 16:49:00 1057

转载 基于消息驱动的面向对象通用C/S应用框架(五)

1.5 ACE架构        ACE(Adaptive Communication Environment,自适配通信环境)是一套专门处理多平台差异和编程复杂性的优秀中间件,对网络应用程序的开发具有重要意义,特别是大型服务器程序的开发。ACE已经成为许多网络计算系统的基础,从实时的航空电子应用到CORBA ORB的实现,以及对主机“端到端(Peer-to-Peer)”通信的支持,等等。

2009-01-17 16:48:00 1095

转载 基于消息驱动的面向对象通用C/S应用框架(四)

      COM(组件对象模型)基于接口查询原理而不是接口共享的原理,这一点与CORBA不同。COM支持三种进程模型:进程内服务组件、本地进程外服务组件、远程服务组件,但是客户端的访问方法却是一致的,COM库提供了这种进程透明性。远程服务组件更进一步被强化为位置透明性,并被称为DCOM,即分布式组件对象模型,它是COM在分布式计算环境下的扩展。

2009-01-17 16:47:00 630

转载 基于消息驱动的面向对象通用C/S应用框架(三)

1.3 CORBA分布式面向对象体系结构        公共对象请求代理结构(CORBA)是一个被软件工业界广泛认同和采纳的、用来开发分布式面向对象应用软件的体系结构,同时也是由OMG(国际对象管理组)制订的软件互操作国际标准,其目的就是提供一个分布式应用程序开发的公共框架,使得在分布于计算机网络中的各种异构平台上(硬件或操作系统都不尽相同)实现的软件都可以互连、互通和互操作。1.3.

2009-01-17 16:46:00 777

转载 基于消息驱动的面向对象通用C/S应用框架(二)

1.2 C/S模型的演变        经典的基于网络消息的客户机/服务器模型如下图所示:图1-1 基于消息的C/S模型        在这个模型中,服务器首先启动并开始侦听客户机的远程连接请求,当客户机发起连接请求并被服务器接受后,就可以向服务器依次发送预定义好的请求消息。服务器在收到客户机的请求消息后就可以解析这些消息,然后执行所请求的操作,最后构造并向客户机发送应答消息,

2009-01-17 16:45:00 1017

转载 基于消息驱动的面向对象通用C/S应用框架(一)

第1章C/S应用框架介绍        内容简介:        基于框架来开发具体的应用系统已然是软件开发的主流模式,比如基于CORBA/ORB、J2EE/EJB、DCOM等来开发工业级和企业级分布式应用软件系统,基于ACE来开发复杂的应用服务器软件,基于MFC框架来开发Windows窗口类应用软件,等等。通用框架以及某类应用系统的应用框架,对应用系统软件的设计和开发的影响无疑是巨大

2009-01-17 16:44:00 1246

转载 经典的双缓冲CDC绘图类(解决闪烁问题)

// CMemDC - memory DC//// Author: Keith Rule// Email:  [email protected]// Copyright 1996-1997, Keith Rule//// You may freely use or modify this code provided this// Copyright is included in all deriv

2009-01-17 16:35:00 795

转载 赋值表达式和逗号表达式

C++把赋值运算符连接而成的式子叫做赋值表达式,例如:a=b、a=b+c、a=3等。赋值运算符是一个双目运算符,必须两个参与运算的值,其左边的值叫做l-value,通常是变量或赋值表达式,常量和常变量不可以作为赋值表达式的左值。赋值运算符右端的值叫做r-value,通常一个常量、变量或表达式。       C++把逗号运算符连接的式子叫做逗号表达式,例如:“a,a*3”,“b+3,d/4”等。

2009-01-17 16:33:00 1195

转载 ++和--运算

++是C++的自增运算符,作用是使变量自加1;--是自减运算符,作用是使变量自减1。++和--有两种用法,一种是前缀用法,一种是后缀用法。前缀用法如:++i、--i ,后缀用法如i++、i--,前缀用法跟后缀用法的差别在于前缀时++i的值为完成i加1后的值,--i为完成i减1后的值。例如:假设i的初值为3,执行cout输出结果为4,而执行cout输出结果为3。--运算符同理。这是世人皆知的常识,我

2009-01-17 16:31:00 878

转载 VC 多文档用户界面设计

用习惯了Delphi、VB、Windows Form(Visual C#)等称之为RAD(Rapid Application Development)的开发工具进行项目开发的都会很满足这些工具和平台提供的快速界面开发的功效:你可以很容易就可以实现一个MIS系统的管理界面,提供一个主框架,点击主框架上的某一个菜单项就打开一个处理事务的窗口,这些窗口可以重叠,可以最大/小化,一切看起来都像那么回事。但

2009-01-17 00:54:00 1058

转载 VC项目开发之单文档多视图实现

多视图是VC开发中经常要用到的技术之一,一般地实现单文档多视图有两种方式1)通过视图分割的技术(使用CSplitterWnd实现),将窗口分割为多个部分,每个部分显示各自显示不同的视图,这种技术实现起来比较简单,并且相关的资料也很多。2)通过一个文档关联多个视图,窗口显示整个视图。第二种实现较第一种复杂,这里给出详细的实现方法。Step 1:使用VC 6.0新建一个Project,命名为:Mu

2009-01-17 00:53:00 1396

原创 常用数据类型使用转换详解

刚接触VC编程的朋友往往对许多数据类型的转换感到迷惑不解,本文将介绍一些常用数据类型的使用。我们先定义一些常见类型变量借以说明int i = 100;long l = 2001;float f=300.2;double d=12345.119;char username[]="程佩君";char temp[200];char *buf;CString str;_variant_t v1;_bs

2009-01-17 00:48:00 509

转载 VC常用数据类型列表

 TypeDefault SizeDescription    基础类型 全是小写 说明:这些基础数据类型对于MFC还是API都是被支持的booleanunsigned 8 bit ,取值TRUE/FALSE

2009-01-17 00:48:00 563

转载 内存对齐#define _INTSIZEOF(n) ((sizeof(n)+sizeof(int)-1)&~(sizeof(int) - 1) )

对于两个正整数 x, n 总存在整数 q, r 使得x = nq + r, 其中  0q, r 是唯一确定的。q = [x/n], r = x - n[x/n]. 这个是带余除法的一个简单形式。在 c 语言中, q, r 容易计算出来: q = x/n, r = x % n.所谓把 x 按 n 对齐指的是:若 r=0, 取 qn, 若 r>0, 取 (q+1)n. 这也相当于把 x 表示为:x =

2009-01-17 00:45:00 639

转载 深入分析MFC文档视图结构

文档视图结构(Document/View Architecture)是MFC的精髓,也是Observer模式的具体实现框架之一,Document/View Architecture通过将数据和其表示分开,提供了很好的数据层次和表现层次的解耦。然而,虽然我们使用MFC AppWizard就可以很轻松地获得一个支持Document/View Architecture的MFC程序框架,Document/

2009-01-17 00:44:00 971 1

原创 Window 中窗口的层次关系以及窗口的属性

Window 窗口层次关系  相信在Window 下面编程的很多兄弟们都不是很清楚Window 中窗口的层次关系是怎么样的,这个东西很久已经研究过一下,后来又忘记了,今天又一次遇到了这个问题,所以便整理一下。下面就说说Window 中桌面(Deskkop)以及顶层窗口,以及子窗口之间的关系。    在Window 的图形界面下,最基本显示信息的元素就是窗口,每一个Window 窗口都管理着自己与其

2009-01-16 23:37:00 529

转载 有关内存泄漏的知识

有关内存泄漏的知识        最近在看LR,对于内存泄漏的知识有点模糊,查找的有关资料,跟大家分享,本文只是介绍了内存泄漏的概念,例子,分类,表现,和检测方法,抛砖引玉,希望大侠们能分享自己检测出的内存泄漏实例。1.概念        简单的说就是你申请了一块内存空间,使用完毕后没有释放掉。它的一般表现方式是程序运行时间越长,占用内存越多,最终用尽全部内存,整个系统崩溃。由程序申请的一块内存,

2009-01-14 23:01:00 551

转载 双向链表

view plaincopy to clipboardprint?#ifndef _LIST_H_   #define _LIST_H_   #include    #define _ASSERT_RET(cond, ret) if (!(cond)){printf("file: %s,line: %d/n", __FILE__, __LINE__);return 

2009-01-14 23:00:00 648

转载 SQL基本语句

掌握SQL四条最基本的数据操作语句:Insert,Select,Update和Delete。   练掌握SQL是数据库用户的宝贵财 富。在本文中,我们将引导你掌握四条最基本的数据操作语句—SQL的核心功能—来依次介绍比较操作符、选择断言以及三值逻辑。当你完成这些学习后,显然你已经开始算是精通SQL了。  在我们开始之前,先使用CREATE TABLE语句来创建一个表(如图1所示)。DDL语句对数据

2009-01-14 22:50:00 453

转载 SQL优化

我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习、摘录、并汇总部分资料与大家分享! (1)      选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE 的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如

2009-01-14 22:49:00 387

转载 SQL Server数据库开发

如果你正在负责一个基于SQL Server的项目,或者你刚刚接触SQL Server,你都有可能要面临一些数据库性能的问题,这篇文章会为你提供一些有用的指导(其中大多数也可以用于其它的DBMS)。 在这里,我不打算介绍使用SQL Server的窍门,也不能提供一个包治百病的方案,我所做的是总结一些经验----关于如何形成一个好的设计。这些经验来自我过去几年中经受的教训,一直来,我看到许多同样的设计

2009-01-14 22:44:00 596

SQL编程规范 SQL编程规范

SQL编程规范 SQL编程规范 SQL编程规范

2010-10-17

VC编程规范 VC编程规范

VC编程规范VC编程规范VC编程规范VC编程规范

2010-10-17

软件编程规范总则 软件编程规范总则

软件编程规范总则 软件编程规范总则 软件编程规范总则

2010-10-17

C++_编程规范[收藏]

C++_编程规范 不错的编程规范,值得学习

2010-10-17

Google C++ 编程规范

Google C++ 编程规范,很值得学习的规范

2010-10-17

MFC类库详解-MFC类库详解

MFC类库详解 MFC类库详解 MFC类库详解 MFC类库详解

2010-10-17

关于C++指针方面资料的集合

关于C++指针方面资料的集合 深入理解C语言指针的奥秘 灵巧指针与垃圾回收

2010-10-17

Windows API 参考大全

Windows API 参考大全 详细介绍主要的Windows API。

2009-01-12

空空如也

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

TA关注的人

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