- 博客(44)
- 资源 (27)
- 收藏
- 关注
转载 IOCP模型和编程实例
一。前言: 在老师分配任务(“尝试利用IOCP模型写出服务端和客户端的代码”)给我时,脑子一片空白,并不知道什么是IOCP模型,会不会是像软件设计模式里面的工厂模式,装饰模式之类的那些呢?嘿嘿,不过好像是一个挺好玩的东西,挺好奇是什么东西来的,又是一个新知识啦~于是,开始去寻找一大堆的资料,为这个了解做准备,只是呢,有时还是想去找一本书去系统地学习一下,毕竟网络的资料还是有点零散
2014-04-27 17:29:18 308
转载 以太网,IP,TCP,UDP数据包分析
1、ISO开放系统有以下几层:7应用层6表示层5会话层4传输层3网络层2数据链路层1物理层2、TCP/IP 网络协议栈分为应用层(Application)、
2014-03-18 14:25:50 315
转载 移植代码到linux .
把代码从window移植到linux,才知道有不少的区别是要注意的,线程和socket方面都有不同,函数的库及定义也会有一点点不同,下面结合网上找的资料,总结一下要注意的区别: 1. 文件与目录的大小写以及路径分隔符的差别。 windows下不区分大小写,路径分隔符一般使用"/";linux下区分大小写,路径分隔符使用"/"。 2. itoa()函数
2014-03-06 14:39:16 251
转载 学习linux/unix编程方法的建议,学习Linux的四个步骤
解答:学习Linux的四个步骤假设你是计算机科班出身,计算机系的基本课程如数据结构、操作系统、体系结构、编译原理、计算机网络你全修过我想大概可以分为4个阶段,水平从低到高从安装使用=>linux常用命令=>linux系统编程=>内核开发阅读内核源码其中学习linux常用命令时就要学会自己编译内核,优化系统,调整参数安装和常用命令书太多了,找本稍微详细点的就ok,其间需要学会正则
2013-12-21 17:30:42 172
转载 一个程序员对学弟学妹建议
我始终认为,对一个初学者来说,IT界的技术风潮是不可追赶。我时常看见自己的DDMM们把课本扔了,去买些价格不菲的诸如C#, VB.Net这样的大部头,这让我感到非常痛心。而许多搞不清指针是咋回事的BBS站友眉飞色舞的讨论C#里面可以不用指针等等则让我觉得好笑。C#就象当年的ASP一样,“忽如一夜春风来,千树万树梨花开”,结果许多学校的信息学院成了“Web 学院”。96,97级的不少大学
2013-11-19 16:21:57 302
转载 浅谈软件架构师的素质与职责
最近开始学习如何成为一名合格的架构师。首先参照别人的观点,在结合自己的实际经验,写出自己对如何成为一名架构师的理解,希望大家热心于与援手,能够指点一二。沟通能力和自我表达我认为沟通能力是基本中的基本,最为重要,最为普遍的素质。技术人员好像容易忽略,想成为架构师就不能忽略。因为架构师要做的第一件事就是与团队成员、项目经理、客户认同沟通,获得认同。我知道,这对于现在做技术,以后想转做架构的人也
2013-11-18 09:55:32 181
转载 如何提高团队协作的效率
摘要:软件开发是一项团队活动,必然需要团队成员间的交流与协作。由此,如何提高团队协作的效率便成为大家共同关注的话题。本期三位嘉宾将结合自己的实践经验与大家一起探讨。金仕达卫宁软件科技有限公司首席架构师李枫:审时度势,及时调整分工合理,责任明确团队是由个人组成的,团队中的个人往往经历不同、背景不同、性格有差异、水平有高低。在团队形成后、正式开工前,首先应该进行合理分工,要结合
2013-10-11 10:07:51 262
转载 Windows socket之IO完成端口(IOCP)模型开发编程举例
Windows socket之IO完成端口(IOCP)模型开发 IO完成端口是一种内核对象。利用完成端口,套接字应用程序能够管理数百上千个套接字。应用程序创建完成端口对象后,通过指定一定数量的服务线程,为已经完成的重叠IO操作提供服务。该模型可以达到最后的系统性能。 完成端口是一种真正意义上的异步模型。在重叠IO模型中,当Windows socket应用程序
2013-08-05 17:31:27 338
转载 Wireshark的Pcap文件格式分析
pcap文件格式是常用的数据报存储格式,包括wireshark在内的主流抓包软件都可以生成这种格式的数据包下面对这种格式的文件简单分析一下: pcap文件的格式为: 文件头 24字节 数据报头 + 数据报 数据包头为16字节,后面紧跟数据报 数据报头 + 数据报 ......pcap.h里定义了文件头的格式struct pcap_file_head
2013-06-13 18:58:14 451
转载 C语言解析pcap文件得到HTTP信息实例
程序功能为解析由Wireshark生成的pcap文件。实现步骤:1)用Wireshark软件抓包得到test.pcap文件2)程序:分析pcap文件头 -> 分析pcap_pkt头 -> 分析帧头 -> 分析ip头 -> 分析tcp头 -> 分析http信息#include#include#include#include#include#define BUFSI
2013-06-13 18:11:54 2364
转载 大端(Big Endian)与小端(Little Endian)详解
【大端(Big Endian)与小端(Little Endian)简介】Byte Endian是指字节在内存中的组织,所以也称它为Byte Ordering,或Byte Order。 对于数据中跨越多个字节的对象, 我们必须为它建立这样的约定:(1) 它的地址是多少?(2) 它的字节在内存中是如何组织的? 针对第一个问题,有这样的解释: 对于跨越多个字
2013-06-13 18:10:07 208
转载 多平台防止程序二次启动
我们在编写应用程序的过程中,通常会遇到这样的情况,因为某些原因,程序被系统多次或者反复调用,导致程序耗尽系统内存或者出现不可预知的错误,最终影响到程序原本的设计需求,这显然不是我们所希望看到的结果,但是如果在程序内部加上必要的判断,不管系统是否多次调用,都能防止同一时刻多个同样的程序同时运行。 网络上防止程序二次启动的方法大同小异,最常见的便是程序启动时先检测指定文件是否存在,如果不存在
2013-05-30 18:38:39 290
转载 字符与编码的学习与总结
在VC6中,默认使用MBCS编码,即多字节字符;而VC8、VC7默认的是Unicode编码,实际就是支持大于0x80的ASCII码。这样,一个中文字可以表示为2个字节,GB2312就是这样表示的。 VC6的默认安装是不带UNICODE库的,要在VC6中写UNICODE程序,必须安装CRT和MFC的Unicode库。要使你的程序支持Unicode,要在你的项目属性中去掉"_MBCS"宏定义
2013-04-10 16:03:09 242
转载 sql查询进阶--深入理解子查询
T-SQL查询进阶--深入理解子查询引言 SQL有着非常强大且灵活的查询方式,而多表连接操作往往也可以用子查询进行替代,本篇文章将会讲述子查询的方方面面。 简介 子查询本质上是嵌套进其他SELECT,UPDATE,INSERT,DELETE语句的一个被限制的SELECT语句,在子查询中,只有下面几个子句可以使用SELECT
2012-12-14 00:55:25 237
转载 vmware和主机通信方法
虚拟机和主机通信的机制1、Bridged方式虚拟系统的IP可以设置成与本机系统在同一个网段,虚拟机相当于网络内部一个独立的机器,与本机共同插在一个Hub上,网络内的其他机器可以访问虚拟机,虚拟机也可以访问网络内其他机器,当然与本机的互访也不成问题。我用本机网卡和eth0配置到一个网络,不能互联,需要本机连接到一个Hub上才行。也就是说主机必须在网络上。2、NAT方式使用VMwa
2012-12-07 15:33:32 599
转载 Shell脚本编程的常识
http://mprc.pku.edu.cn/mentors/training/TrainingCourses/material/ShellProgramming.HTMShell脚本编程的常识(这些往往是经常用到,但是各种网络上的材料都语焉不详的东西,个人认为比较有用)七种文件类型d 目录
2012-11-28 18:36:49 194
转载 PPT高级教程及技巧 .
PPT高级教程及技巧时间:2010-04-12 http://www.misterlv.com/a/jiagongjishu/2010/0412/7.html1. 两幅图片同时动作 PowerPoint的动画效果比较多,但图片只能一幅一幅地动作。如果你有两幅图片要一左一右或一上一下地向中间同时动作,可就麻烦了。其实办法还是有的,先安置好两幅图片的位置,选中它们,将之组合起来,成为一张图片。
2012-11-24 23:08:19 1892
转载 PPT精典基础教程 .
PPT精典基础教程(一)一、认识窗口启动PowerPoint,点开始-所有程序-Microsoft Offic-Microsoft Office PowerPoint 2003,就可以打开一个窗口;窗口分成三栏,中间宽大的是工作区,左边是幻灯片的序号,右边是任务属性窗格,幻灯片主要在中间的工作区中进行;1、空白幻灯片1) 在工作区中间有两个虚线框,里面写着“单击此处...”,这
2012-11-24 23:05:03 463
转载 版本管理工具客户端——TortoiseSVN使用简介 .
1安装及下载client 端2什么是SVN(Subversion)?3为甚么要用SVN?4怎么样在Windows下面建立SVN Repository?5建立一个Working目录6新增档案及目录到Repository中7更新档案及目录8更新至特定版本9复制档案及目录10制作Tag或是Release11快速参考11.1取得(Checkout)Repos
2012-11-24 21:42:33 264
转载 Oracle 总结 .
/*============================================================================ *Author: MartriWang@gmail.com *Date: 09/05/2007 *Description:ORACLE Summary *===================================
2012-10-11 16:27:30 782
转载 数据库使用经验
sql在不同数据库查询前几条数据关键字: sql 前几条结果 sql在不同数据库查询前几条数据 1. ORACLE SELECT * FROM TABLE1 WHERE ROWNUM HQL: from table1 t order by t.createTime desc where rownum2. INFORMIX SELECT FIRST N * F
2012-10-11 12:41:23 356
转载 solaris下的ftp命令介绍
solaris下的ftp命令介绍(保存)1.ftp 本地工作站与远端工作站之间文件传输(solaris) :必须拥有远端工作站的帐号及密码,才可进行传输工作 : 格式: ftp hostname or ftp ip_address 例如 : ftp 129.9.123.45 与远端工作站 129.9.123.45 ,进行文件传输 Name (129.9.123.45:use
2012-09-20 10:00:41 415
转载 OpenSolaris/Solaris 常见问题解答
本文转载于 http://blog.chinaunix.net/uid-11193716-id-2896321.html OpenSolaris/Solaris中文FAQ (2008-08-04 19:30)分类: Solaris 注: 1.本文档只覆盖Solaris 9及以后的平台上的常见问题 2.S9/10/11 分别对应目前Sol
2012-09-20 09:59:24 3006
转载 Oracle使用技巧及PL/SQL Developer配置
·PL/SQL Developer使用技巧 1、PL/SQL Developer记住登陆密码 在使用PL/SQL Developer时,为了工作方便希望PL/SQL Developer记住登录Oracle的用户名和密码; 设置方法:PL/SQL Developer 7.1.2 ->tools->Preferences->Oracle->Logon History , "Sto
2012-09-16 15:47:02 1145
转载 进程通信之一 使用WM_COPYDATA 说明 C++及C#实现例子
进程间通信最简单的方式就是发送WM_COPYDATA消息。本文提供C++及C#程序相互通信的二种实现方式。这样消息的接收端可以用C++实现,发送端可以用C++或C#实现。 发送WM_COPYDATA消息:SendMessage(接收窗口句柄, WM_COPYDATA, (WPARAM)发送窗口句柄, (LPARAM)&CopyData); 其中的CopyData为COPYDAT
2012-09-05 10:56:20 1295
转载 sscanf函数的说明和详细用法
头文件 #include 定义函数 int sscanf (const char *str,const char * format,........); 函数说明 sscanf()会将参数str的字符串根据参数format字符串来转换并格式化数据。格式转换形式请参考scanf()。转换后的结果存于对应的参数内。
2012-09-05 09:16:05 311
转载 关于C++ const 的全面总结
C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助。Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。 一、Const作用 如下表所示:No.作用说明参考代码
2012-09-03 16:05:17 145
转载 C++ 命名空间 详细说明
一、 为什么需要命名空间(问题提出) 命名空间是ANSIC++引入的可以由用户命名的作用域,用来处理程序中 常见的同名冲突。 在 C语言中定义了3个层次的作用域,即文件(编译单元)、函数和复合语句。C++又引入了类作用域,类是出现在文件内的。在不同的作用域中可以定义相同名字的变量,互不于扰,系统能够区别它们。 1、全局变量的作用域是整个程序,在同一作用域中不应
2012-09-03 10:26:51 350
转载 PreTranslateMessage介绍,作用和使用方法
1. 函数原型(源自MSDN) virtual BOOL PreTranslateMessage(MSG* pMsg); 功能: 重载该函数可以实现窗口消息在派发给窗口函数TranslateMessage()和DispatchMessage()之前的过滤.缺省的实现是完成加速键的翻译.因为您必须在你的重载版本中调用CWinApp:PreTranslateM
2012-08-29 10:14:12 315
转载 windows下vc防止相同程序进程多次调用
CreateMutex作用 找出当前系统是否已经存在指定进程的实例。如果没有则创建一个互斥体。CreateMutex()函数可用来创建一个有名或无名的互斥量对象,其函数原型为:VB声明 Declare Function CreateMutex Lib "kernel32" Alias "CreateMutexA" (lpMutexAttributes AsSECURITY_
2012-08-24 16:46:23 507
转载 ANSI与UNICODE字符函数对照表
宽字符处理函数函数与普通函数对照表字符分类:宽字符函数普通C函数描述iswalnum() isalnum()测试字符是否为数字或字母iswalpha() isalpha()测试字符是否是字母iswcntrl() iscntrl()测试字符是否是控制符iswdigit() isdigit()测试字符是否为数字iswgraph() isgraph()测试字符是否是可见字符i
2012-08-24 15:44:53 884
原创 MultiByteToWideChar和WideCharToMultiByte用法实例
WideCharToMultiByte使用实例:宽字节转成多字节字符串#include #include void main(){ wchar_t wText[20] = {L"宽字符转换实例!OK!"}; //DWORD dwNum = WideCharToMultiByte(CP_OEMCP,NULL,wText,-1,NULL,0,NULL,FALSE); D
2012-08-24 15:36:34 1024
转载 c++ setlocale函数
setlocale配置地域化信息。语法: char * setlocale ( int category, const char * locale );返回值: 字符串函数种类: 操作系统与环境内容说明本函数用来配置地域的信息,设置当前程序使用的本地化信息。参数 category 有下列的选择: * LC_ALL 包括下面的全项选项都要。 * LC_
2012-08-24 15:20:32 2038
转载 VC++的Unicode编程
一、什么是Unicode 先从ASCII说起,ASCII是用来表示英文字符的一种编码规范。每个ASCII字符占用1个字节,因此,ASCII编码可以表示的最大字符数是255(00H―FFH)。其实,英文字符并没有那么多,一般只用前128个(00H―7FH,最高位为0),其中包括了控制字符、数字、大小写字母和其它一些符号。而最高位为1的另128个字符(80H―FFH)被称为“扩展ASCII”,一般
2012-08-24 10:20:09 288
转载 DirectShow库的编译及VS环境配置
一. 第一步,设置INCLUDE及LIB目录在把dxsdk中提供的baseclass编译通过后,用四种方式编译,会分别生成四个lib,一般只用到了其中的Debug和Release文件,在tool|option|vc++ directories中包含的files中设置如下。这里需要加入得include files有四种:D:\SDK\DXSDK\IncludeD:\SDK\DXS
2012-08-23 14:30:47 636
转载 DirectX9.0b SDK下载地址及安装说明
今天真是混帐,花费了4,5个小时安装DirectShow。先是下载,ms要正版的windows才能下载,郁闷;找了n久终于找到可以下载的链接http://hotdl.com/dl/showfile.php?id=640&category=52另外,DirectX9.0c已经将DShow分离出去了,下载时请选DirectX9.0b或者一下再是配置DirectShow的VC开发环境
2012-08-23 14:14:57 3765
转载 mfc中CImageList的使用简介
图像列表控制(CImageList)是相同大小图像的一个集合,每个集合中均以0为图像的索引序号基数,图像列表通常由大图标或位图构成,其中包含透明位图模式。可以利用WINDOWS32位应用程序接口函数API来绘制、建立和删除图像,并能实现增加、删除、替换和拖动图像等操作。图像列表控制提供了控制图像列表的基本方法,这些方法在WINDOWS95及以后版本才能实现。一、图像控制的对象结构1图像
2012-08-22 17:18:15 549
转载 VC 树形控件(CTreeCtrl)的使用
树型视的三个结构TVINSERTSTRUCT、TVITEM、NMTREEVIEWTVINSERTSTRUCT 包含添加新项到树形视控件所使用的信息。这个结构被TVM_INSERTITEM消息使用。这个结构与TV_INSERTSTRUCT结构是一样的,但它已经按当前的命名习惯重命名了。typedef struct tagTVINSERTSTRUCT { HTREEITEM
2012-08-21 23:38:42 278
转载 保护眼睛的windows颜色配置方案
设置方法: >1. 桌面-右键-属性-外观-高级-项目-窗口(记住选窗口啊)-颜色-其它,色调设为85,饱和度设为90,亮度设为205。然后单击[添加到自定义颜色]-确定...一路确定。>2. 把窗口设成绿色之后,再来把IE的网页背景也变成养眼的绿色吧:打开IE,点击工具(TOOLS),点INTERNET选项(INTERNET OPTIONS),点右下角的辅助功能(Assessib
2012-08-21 09:22:46 154
转载 虚拟机共享上网
第一种方式上网:NTA方式 1.安装VMware Workstation 的过程我自然不必多说,一路下一步,便 可以搞定.但是这里我要提醒的是在安装过VMware Workstation软件 后,会在本地连接中,多了两个虚拟网卡,一个是 VMware Network Adapter for VMnet1 .另一个是 VMware Network Adapter for VMnet8 注意:要确保V
2012-08-21 01:49:56 137
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人