
server&
文章平均质量分 85
as good as well
如果多吃鱼可以补脑让人变聪明的话,那么我至少得吃一对儿鲸鱼……:(
展开
-
转,ace与atl与mfc与com
使用ACE也有1年的时间了,从初见ACE时的惊艳,到积极的学习ACE并大胆的将其引入到工程中,再到现在的复杂心情,有些话我真是不吐不快。 我是在windows下做开发的,由于所做的工程涉及到很多界面操作,所以仍然采用了MFC作为开发的基础类库。也许是ACE与MFC天生不合吧,一开始便遇到了问题——内存泄漏!为了这个问题,我在ACE的网站上、yahoo的两个ACE讨论组和当时的小飞驴论原创 2017-08-04 22:06:26 · 314 阅读 · 0 评论 -
STUN穿透
STUN是RFC3489规定的一种NAT穿透方式,它采用辅助的方法探测NAT的IP和端口。毫无疑问的,它对穿越早期的NAT起了巨大的作用,并且还将继续在ANT穿透中占有一席之地。 STUN的探测过程需要有一个公网IP的STUN server,在NAT后面的UAC必须和此server配合,互相之间发送若干个UDP数据包。UDP包中包含有UAC需要了解的信息,比如NAT外网IP,PORT等原创 2017-08-04 22:06:15 · 1416 阅读 · 0 评论 -
Modbus TCP源代码,java实现
============================================================test3.java - JAVA program to read registers============================================================// test3.java 7/23/97 - JAVA program原创 2017-08-04 22:06:12 · 5531 阅读 · 2 评论 -
基于Modbus协议实现单片机与PLC之间的通讯
1 引言HMI(人机界面)以其体积小,高性能,强实时等特点,越来越多的应用于工业自动化系统和设备中。它有字母、汉字、图形和图片等不同的显示,界面简单友好。配有长寿命的薄膜按钮键盘,操作简单。它一般采用具有集成度高、速度快、高可靠且价格低等优点的单片机[1]作为其核心控制器,以实现实时快速处理。 PLC和单片机结合不仅可以提PLC的数据处理能力,还可以给用户带来友好简洁的界面。本文以Modbus通讯原创 2017-08-04 22:06:10 · 7679 阅读 · 1 评论 -
Modbus协议编程
一、通讯协议(一)、通讯传送方式:通讯传送分为独立的信息头,和发送的编码数据。以下的通讯传送方式定义也与MODBUS RTU通讯规约相兼容:编 码8位二进制起始位1位数据位8位奇偶校验位1位(偶校验位)停止位1位错误校检CRC(冗余循环码)初始结构 = ≥4字节的时间 地址码 = 1 字节功能码 = 1 字节数据区 = N 字节错误校检 = 16位CRC码 结束结构 = ≥4字节的时间 地址码:原创 2017-08-04 22:06:07 · 767 阅读 · 0 评论 -
MPC使用介绍(二)(zt)
下面的内容紧接着MPC使用介绍(一)。3. 编写MPC和MWC文件这节将为大家分别介绍各种输入文件类型和语法的详细信息:3.1 输入文件MPC处理四种不同类型的文件,但是针对大多数的用户,通常情况下只需要关心mpc文件和mwc文件。3.1.1 项目文件(mpc)项目文件(使用mpc后缀),包含了这些信息:包含路径、库目录、源文件以及项目间的依赖关系。一个mpc文件可以有一个或多个的项目,这些项目需原创 2017-08-04 22:05:21 · 5764 阅读 · 0 评论 -
NoSQL数据库探讨之为什么要用非关系数据库
随着互联网web2.0网站的兴起,非关系型的数据库现在成了一个极其热门的新领域,非关系数据库产品的发展非常迅速。而传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,例如: 1、High performance - 对数据库高并发读写的需求 web2.0网站要根据用户个性化信息来实时生成动态页面和提供原创 2017-08-04 22:04:22 · 268 阅读 · 0 评论 -
atlas的behavior分析之target scanner
behavior target scanner分析1、判断所属cluster node是否为空;2、判断自己是否活着(alive参数);3、判断目标avatar id是否clear;4、is clear情况查找新target;检查是否在check周期内(默认2s);遍历interest list;判断是否是game object对象;判断是否活着;判断是客户端对象,加入目标list;判断所属tea原创 2017-08-04 22:04:00 · 237 阅读 · 0 评论 -
unreal engine3引擎的组成
图新引擎,音效引擎,物理引擎,输入模块,网络模块,unreal脚本解释器布娃娃ragdoll,刚体rigidbody,碰撞collision,粒子particle,发射器emitter引擎模块划分:画刷静态网格物体材质光源地形terrain关卡优化关卡动态载入kismetmatinee物理对象粒子系统particle system用户界面组件声音系统soundcue后期特效post pro原创 2017-08-04 22:03:57 · 544 阅读 · 1 评论 -
atlas数据同步分析(inventory)
1、atlas的inventory是一个包含UIAtlas_ContentSlot和UIAtlas_ContentButton的UIScene_Atlas_BaseScene,通过player的鼠标拖拽来实现换装;2、UIAtlas_ContentSlot,UIAtlas_ContentButton和鼠标拖拽这里不做描述了,这里仅仅描述如何通过atlas来做各个客户端的装备同步;3、所有与atla原创 2017-08-04 22:03:55 · 1030 阅读 · 0 评论 -
关于does not give a valid preprocessing token
今天碰到gcc的这个编译错误,经实验总结原因如下1、老版本gcc编译器对"."和","作为##符的辅助分隔符没有处理,只有空格可以作为##符的分隔符,例如替换语句中间定义的token采用##token##,例如gcc-3.4.1;2、新版本gcc编译器,"."和",",以及空格都可以辅助##符来拆分token,也就是说token前后只要有这三种符号,其它符号还未测试,都可以省去##符,例如原创 2017-08-04 22:03:49 · 14464 阅读 · 3 评论 -
poco例子及代码阅读笔记
1、uuidgenerator类 UUID uuid; if (arg == "-random") uuid = UUIDGenerator::defaultGenerator().createRandom(); else if (arg.empty()) uuid = UUIDGenerator::defaultGenerator().create(); else原创 2017-08-04 22:03:29 · 1312 阅读 · 0 评论 -
Howto: Deploy VC2008 apps without installing vcredist_x86.exe
There are several reasons for xcopy deployment of an application (also known as application local). One main reason is that you are independent of what the target computer has installed. Also your ap原创 2017-08-04 22:03:20 · 345 阅读 · 0 评论 -
c++和c#参数对照,不断完善中
部分参数对照表: C++ I/O C# char path[255] O StringBuilder KCA_DIR I int LPCSTR原创 2017-08-04 22:03:17 · 528 阅读 · 0 评论 -
sqlserver的常用函数
/*日期函数*/DATEADD ( datepart , number, date ) --在向指定日期加上一段时间的基础上,返回新的 datetime 值。DATEDIFF ( datepart , startdate , enddate ) --返回跨两个指定日期的日期和时间边界数。DATENAME ( datepart , date )--返回代表指定日期的指定日期部分的字符串。DATEPA原创 2017-08-04 22:03:14 · 346 阅读 · 0 评论 -
当前最流行的三大数据库之间对比zt
当前最流行的三大数据库之间对比:mysql sql-server oraclemysql 用户变量:set @varialname={ integer expression | real expression | string expression }sql-server 用户变量:declare @varialname integerset @varialname原创 2017-08-04 22:03:12 · 1577 阅读 · 0 评论 -
模板特化的一个例子
// test.cpp // xp + vc-7_1 // cl -EHsc test.cpp #include template class delegate; template class delegate { public: delegate(T & t, R (T::*fn)(P), P const &原创 2017-08-04 22:03:09 · 253 阅读 · 0 评论 -
关于fatal error RC1107: invalid usage; use RC /? for Help
vs2005、2008编译apache2.2.10发现此错误,google下发觉有两种情况会出现这类错误,一种是浏览资源文件时,另外一种是编译资源文件时,分别解决如下:第一种,修改vc option设置的默认包含文件,如果包含有绝对路径,修改“/”为“//”或者“\”;第二种,修改工程属性的Resources-》General-》Preprocessor Definitions设置,包含空原创 2017-08-04 22:03:03 · 1339 阅读 · 0 评论 -
实实在在说多态(C++篇)--目前找到的说的最清楚的一篇文章
实实在在说多态(C++篇) 星期一, 01月 7th, 2008 转载:http://blog.youkuaiyun.com/guanwl/archive/2007/03/12/1526698.aspx 1.什么是多态 多态是C++中的一个重要的基础,可以这样说,不掌握多态就是C++的门个汉。然而长期以来,C++社群对于多态的内涵和外延一直争论不休。大有只见树木不见森林之势。多态到底是怎么回事呢?说原创 2017-08-04 22:02:57 · 278 阅读 · 0 评论 -
oracle plsql
/**********************************************************/使用SQLPLUS,构建excel或html输出1.main.sql脚本:[oracle@jumper utl_file]$ more main.sqlset linesize 200set term off verify off feedback off pagesize原创 2017-08-04 22:02:45 · 243 阅读 · 0 评论 -
Erlang入门
Erlang概述 Erlang不但是一种编程语言,而且它具有比编程语言更加贴近操作系统的一些特性:并发线程、作业调度、内存管理、分布式、网络化等。据说使用Erlang编写的Yaws Web服务器,其并发性能是apache的15倍! 这个Erlang初始开源版本包含了Erlang的实现,同时它也是用于构建分布式高可用性系统的Ericsson中间件的最大组成部分。 Erlang具有以下特性:原创 2017-08-04 22:02:25 · 361 阅读 · 0 评论 -
(转)精通C++的定义
今日看到大把的同学的简历上都写着“精通c++”,”精通xxxx”,其实他们可能只是会写个helloworld,知道class是个关键字而已吧.其它的我都不是太懂,唯独c++研究过些时日了,自己心中的精通为何也早有定义:1)知道所有关键字的含义,这个是最基本的.有很多很少用的也必须知道..比如auto,mutable,explicit,volatile...1.5)通读过一遍 ISO C++标准2)原创 2017-08-04 22:02:11 · 210 阅读 · 0 评论 -
最详细的tcpdump介绍
名称 (NAME)tcpdump - 转储网络上的数据流总览 (SYNOPSIS)tcpdump [ -adeflnNOpqStvx ] [ -c count ] [ -F file ] [ -i interface ] [ -r file ] [ -s snaplen ] [ -T type ] [ -w file ] [ expression ] 描述原创 2017-08-04 22:01:59 · 1226 阅读 · 0 评论 -
NAT的完全分析及其UDP穿透的完全解决方案
原文地址http://blog.youkuaiyun.com/colinchan/archive/2006/05/08/712773.aspx 一:基本术语 防火墙 防火墙限制了私网与公网的通信,它主要是将(防火墙)认为未经授权的的包丢弃,防火墙只是检验包的数据,并不修改数据包中的IP地址和TCP/UDP端口信息。 网络地址转换(NAT) 当有数据包通过时,网络地址转换器不仅检查包的信息,还原创 2017-08-04 22:01:57 · 604 阅读 · 0 评论 -
BT客户端源码分析
相对于 tracker 服务器来说,BT客户端要复杂的多,Bram Cohen 花了一年 full time 的时间来完成 BT,我估计其中大部分时间是用在 BT 客户端的实现和调试上了。由于 BT 客户端涉及的代码比较多,我不能再象分析 tracker服务器那样,走上来就深入到细节之中去,那样的话,我写的晕晕糊糊,大家看起来也不知所云。所以第一篇文章先来谈谈客户端的功能、相关协议,以原创 2017-08-04 22:01:42 · 1632 阅读 · 0 评论 -
BitTorrent 协议规范
BitTorrent是一种分发文件的协议。它通过URL来识别内容,并且可以无缝的和web进行交互。它基于HTTP协议,它的优势是:如果有多个下载者并发的下载同一个文件,那么,每个下载者也同时为其它下载者上传文件,这样,文件源可以支持大量的用户进行下载,而只带来适当的负载的增长。(译注:因为大量的负载被均衡到整个系统中,所以提供源文件的机器的负载只有少量增长) 一个BT文件分布系原创 2017-08-04 22:01:40 · 950 阅读 · 0 评论 -
XML和数据库
XML和数据库摘要近年来,随着软硬件的发展,为新一代数据库技术的发展奠定了物质基础,同时也为数据库技术提出了许多新的要求。同时,W3C制定的XML规范也为数据库技术提供了有力的支持。当前,业界最关心的几个话题就是:分布数据库的管理和通信;大型数据库的知识发现和数据挖掘;掌上设备的轻量数据库管理系统。这这些,都和XML技术有着紧密的联系。在本文中,介绍了关系型数据库理论、XM原创 2017-08-04 22:01:22 · 1193 阅读 · 0 评论 -
__cdecl __fastcall与 __stdcall 调用约定
__cdecl __fastcall与 __stdcall 调用约定__cdecl __fastcall与 __stdcall 调用约定: __cdecl __fastcall与 __stdcall,三者都是调用约定(Calling convention),它决定以下内容:1)函数参数的压栈顺序,2)由调用者还是被调用者把参数弹出栈,3)以及产生原创 2017-08-04 22:01:14 · 222 阅读 · 0 评论 -
c++ __based关键字
__based关键字 该关键字主要用来解决一些和共享内存有关的问题,它允许指针被定义为从某一点开始算的32位偏移值,而不是内存种的绝对位置 举个例子: typedef struct tagDEMOSTRUCT { int a; char sz[10]; } DEMOSTRUCT, * PDEMOSTRUCT; HANDLE hFileMapping = CreateFileMappi原创 2017-08-04 22:01:08 · 604 阅读 · 0 评论 -
c++ explicit关键字
1、c++中的explicit关键字用来修饰类的构造函数,表明该构造函数是显式的,既然有"显式"那么必然就有"隐式",那么什么是显示而什么又是隐式的呢?如果c++类的构造函数有一个参数,那么在编译的时候就会有一个缺省的转换操作:将该构造函数对应数据类型的数据转换为该类对象,如下面所示: class MyClass{public:MyClass( int num );}.原创 2017-08-04 22:01:05 · 171 阅读 · 0 评论 -
c++ volatile关键字
volatile关键字 volatile是c/c++中一个鲜为人知的关键字,该关键字告诉编译器不要持有变量的临时拷贝,它可以适用于基础类型 如:int,char,long......也适用于C的结构和C++的类。当对结构或者类对象使用volatile修饰的时候,结构或者 类的所有成员都会被视为volatile. 使用volatile并不会否定对CRITICAL_SECTION,Mutex,原创 2017-08-04 22:01:02 · 217 阅读 · 0 评论 -
c++ mutable关键字
mutable关键字 关键字mutable是C++中一个不常用的关键字,他只能用于类的非静态和非常量数据成员 我们知道一个对象的状态由该对象的非静态数据成员决定,所以随着数据成员的改变, 对像的状态也会随之发生变化! 如果一个类的成员函数被声明为const类型,表示该函数不会改变对象的状态,也就是 该函数不会修改类的非静态数据成员.但是有些时候需要在该类函数中对类的数据成员 进行赋值.原创 2017-08-04 22:00:59 · 227 阅读 · 0 评论 -
build ace随时更新
1、编译ace-6.0.2win32在$ace_root$ace下面增加config.h文件,添加内容如下#pragma once//#define ACE_USES_WCHAR //使用unicode字符集#define ACE_HAS_MFC 1 //是否使用mfc#include "ace/config-win32.h"打开对应的项目/工程文件,编译 在default_const原创 2017-08-04 22:00:50 · 335 阅读 · 0 评论 -
ace学习之ACE_Message_Block
ace学习之ACE_Message_Block1、copy() 不需要让写指针后移. ACE_Message_Block* mb = new ACE_Message_Block(BUFSIZ); mb->copy(buff); //buff先已经初始化2、初始化mb后需要后移指针的情况 2.1 ACE_Message_Block* mb = new ACE_Message_原创 2017-08-04 22:00:44 · 532 阅读 · 0 评论 -
关于对齐方式
DEC : #pragma pack(1) SUN : #pragma pack(1) AIX : 编译时 -q align=packed HP-UX : #pragma pack 1 1) 结构内部成员的pack struct foo { char a; int b __attribute__ ((packed)); }; 2) 整个结构的p原创 2017-08-04 22:00:25 · 252 阅读 · 0 评论 -
为什么需要hash_map
0 为什么需要hash_map 用过map吧?map提供一个很常用的功能,那就是提供key-value的存储和查找功能。例如,我要记录一个人名和相应的存储,而且随时增加,要快速查找和修改: 岳不群-华山派掌门人,人称君子剑张三丰-武当掌门人,太极拳创始人东方不败-第一高手,葵花宝典...这些信息如果保存下来并不复杂,但是找起来比较麻烦。例如我要找"张三丰"的信息,最傻的方法就是取得所有的记录,然后原创 2017-08-04 22:00:22 · 437 阅读 · 0 评论 -
泛型编程与设计新思维zt
泛型编程与设计新思维作者:徐景周 前言 永远记住,编写代码的宗旨在于简单明了,不要使用语言中的冷僻特性,耍小聪明,重要的是编写你理解的代码,理解你编写的代码,这样你可能会做的更好。 --- Herb Sutter 1998年,国际C++标准正式通过,标准化对C++最重要的贡献是:对"强大的抽象概念"给于更有力的支持,以降低软件的复杂度,C++提供了二种功能强大的抽象方法:面向对原创 2017-08-04 22:00:19 · 186 阅读 · 0 评论 -
在跨平台的C++程序中使用OTL来操作不同的数据库zt
在跨平台的C++程序中使用OTL来操作不同的数据库 OTL介绍:OTL 是 Oracle, Odbc and DB2-CLI Template Library 的缩写,是一个C++编译中操控关系数据库的模板库,它目前几乎支持所有的当前各种主流数据库,例如Oracle, MS SQL Server, Sybase, Informix, MySQL, DB2, Interbase / Firebir原创 2017-08-04 22:00:13 · 368 阅读 · 0 评论 -
otl常见问题
Oracle, Odbc and DB2-CLI Template Library, Version 4.0 Frequently Asked QuestionsPlease, send your questions and comments to skuchin@ispwest.com, skuchin@gmail.comQ. OTL: how does OTL handle NULLs?原创 2017-08-04 22:00:05 · 575 阅读 · 0 评论 -
loki - Smart ptr(zt)
Boost中提供的5类智能指针。分别是:l scoped_ptr 独占的指针l scoped_array 独占的数组l shared_ptr 引用计数指针l shared_array 引用计数数组l weak_ptr原创 2017-08-04 21:59:51 · 330 阅读 · 0 评论