自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

南的专栏

做事不难,难在起步;编程不难,难在坚持

  • 博客(253)
  • 资源 (8)
  • 收藏
  • 关注

原创 在c++中,如何利用try捕获SEH异常

以前在处理SEH异常,一般都是用__try {}__exception(1){}来进行处理的,但是发现这样出来的话,在使用到c++对象的时候,就会提示无法捕获c++异常之类的。 就在想办法利用try{}catch(…){}来进行处理,但是他默认是不处理SEH异常的,就需要在项目属性中进行设置。 项目->属性->所有选项->启用c++异常->是,但有 SEH 异常 (/EHa) 这样

2017-01-23 11:11:40 2794

转载 Detour安装及简单使用实例

Detours是微软开发的一个函数库,可用于捕获系统API。在用其进行程序开发之前,得做一些准备工作:一.下载Detours 在http://research.microsoft.com/sn/detours 可免费下载Detours 二.安装Detours 一路NEXT 三.生成Detours库 在安装后的文件夹下找不到直接可以拿来用的LIB文件

2016-12-27 15:43:58 7102

转载 百度云不限速下载方法

第一种:首先打开http://www.loveno.net/baiduyun/login.html点”与你的百度网盘相连” 走完流程之后进入到你自己的百度云,把要下载的文件放到“我的应用数据”里的“zqqian123”里。 如果没有”zqqian123”文件夹,自行创建 然后回到你走完流程的那个界面,就能看到下载地址,可以直接下载,下载软件推荐用idm 第二种: 需要的软件:1、es文件管

2016-10-24 18:01:05 10294

原创 cocos2d 3.10环境搭建

由于近期工作失业了, 同时真的下定决心转入到游戏行业了。所有打算重温下cocos2d-x。然后去投递游戏公司。本次我们学习如何搭建cocos2d-x的环境.首先是从网上下载VS2013,并安装。然后在网上下载python2.7.10版本安装,并在环境变量path中设置path的安装路径。下载cocos2d-x 3.10版本。下载后发现cocos2d-x 3.10版本中改变了很多东西,目录结构

2016-03-29 12:14:41 1804

原创 qt线程,线程池用到的一点问题

总结一下最近使用qt多线程和线程池遇到的一些问题。1.QThreadPool 线程池的作用是什么呢?把多个线程丢个一个线程池中,让他对目前的线程进行管理。比如最大运行的线程数,以及最大线程数外的线程就处于等待状态等。要放到线程池中的线程必须继承自QRunable类,这个类有个缺点,就是无法向外面发送信号。所以这个类不适合用来做界面的交互,而只是适合用来做数据的处理等。2.QThread使用QThr

2016-02-26 15:22:14 6693 3

原创 貌似是xp sp3解决usb键盘卡顿的问题

注册表编辑器,”HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR”,”Start”键,默认设置为”3”表示手动,将值修改为”2”表示自动.

2016-01-09 23:04:33 526

原创 lua脚本语言的学习-----------------lua栈操作

为了方便Lua与C交互,比如在C代码中调用Lua函数,Lua官方提供了一系列的API和库。利用这些API,C语言就可以方便从Lua中获取相应的值,也可以方便地把值返回给Lua,当然,这些操作都是通过栈作为桥梁来实现的。 lua中的栈跟汇编中的栈类似,都是由栈顶,栈底构成。 在lua_State中 TValue stack[max_stack_len] 就是定义的栈,以及最大的栈

2016-01-02 23:07:12 1231

原创 lua脚本语言的学习-----------------带参数的lua函数的传递

在使用lua的过程中,或许经常需要由lua来传递参数给c++,这时候就需要学习如何去获取到栈中的lua的参数了。在栈中,使用获取参数的函数入下: lua_isnumber(); lua_ronumber(); 这都是double类型相关的函数,判读栈顶是否是数字,并且返回这个数字 下面来看下具体的例子吧。通过lua传参实现一个简单的加法运算// Lua_HelloWorld.cpp : 定义

2016-01-02 15:15:35 10446

原创 lua脚本语言的学习-----------------如何实现c++无参数的函数在lua中调用

在c++和lua的交互过程中,经常会遇到lua中要调用c++里面的函数接口。那么如何去调用c++中的函数呢? 具体步骤如下: 1.定义c++函数接口 2.定义lua函数接口(必须以C风格导出) 3.注册lua函数 4.执行lua函数这样就可以实现在lua中使用c++的函数了 具体使用的源码如下:// Lua_HelloWorld.cpp : 定义控制台应用程序的入口点。//#inclu

2016-01-02 14:56:19 771

原创 lua脚本语言的学习-----------------VS2013如何编译lua脚本的三方库

在VS中,一般情况下,如果要使用lua脚本,最好的情况下就是把lua编译成动态库dll与lib,或者静态库dll。这样就可以在VS环境下,包含相应的库目录,以便于使用lua脚本语言来进行程序和lua的交互了。下面来学习下如何利用VS来编译一个lua的插件吧。1. 打开VS2013,新建一个WIN32控制台应用程序,然后将下载下来的lua版本中的src文件中的 *.h 和*.cpp文件全部包

2016-01-02 14:45:37 1972

转载 MFC注册热键

具体实现步骤如下:1.声明热键消息处理函数原型在XXXDlg.h中消息映射声明处(afx_msg字样之后)加入如下语句: afx_msg LRESULT OnHotKey(WPARAM wParam,LPARAM lParam);2.消息与相应处理函数相关联在XXXDlg.Cpp中加入消息映射宏,使消息与相应处理函数发生关系, ON_MESSAGE(WM_HOTKEY,OnH

2015-12-15 16:26:00 1458

原创 qt中svg格式图片的旋转

#include "mainwindow.h"#include "ui_mainwindow.h"#include#includeMainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow), m_IconSize(30){ ui->setupUi

2015-12-15 14:37:01 2267

原创 口袋西游背包数组分析

按照思路,肯定还是先用CE来进行搜索, 然后找到访问该地址的代码。然后打开OD分析,确定寄存器的来源 00565334 - 8B 45 14 - mov eax,[ebp+14]首先,我们跳转到这个地址的来源,然后下断点,查看ebp的值,发现他和esp的值相差很大,所以可以确定他不是作为栈底寄存器来保存值得,所以就可以把它当做普通的寄存器来进行分析。然后在逆向的过程中,可以先把mov eax,

2015-12-13 17:18:18 846

原创 汇编基本指令复习,以及逆向中如何跟esp ,ebp参数

mov eax , ebx   // eax = ebxlea eax , [ebx + 30] // eax = ebx + 30push pop  //入栈,出栈pushax popax //全部入栈,全部出栈add eax,5 // eax += 5sub eax, 5 //eax -= 6inc eax  // eax += 1mul  //乘法div  /

2015-12-13 15:50:17 3786

原创 口袋西游简单的血量,和喊话发包call的分析

008199FA - DB 87 88020000 - fild dword ptr [edi+00000288]0055C062 - 8B 9E 88020000 - mov ebx,[esi+00000288]首先在CE内分析,得到访问到这个数据的地址。然后打开OD分析,ctrl+G跳转到 上面的地址中0055C023 8B8D 14020000 MOV ECX,D

2015-12-12 14:55:27 1439

原创 汇编寄存器的复习

在游戏外挂的制作过程中,我们在逆向的过程中,都好不疑问的会用到寄存器。 那么这些寄存器都包括哪些呢? 通用寄存器: EAX ECX EDX EBX ESI EDI堆栈寄存器 ESP EBPEAX通常用来保存函数的返回值 ECX 帮助堆栈来传递参数 ESP 栈顶寄存器 EBP 栈底寄存器这一般都是在游戏逆向中用到的一些简单的寄存器操作了

2015-12-12 05:47:47 503

原创 qt中如果使用svg格式的图片在QPainter中绘制图形

在昨天,突然想到重构项目中的代码,然后就想用qvg格式的图片代替以前的IMAGE图片,这样就可以解决缩放有锯齿的问题。然后就在网上搜索了很多方法,但是都没有看懂是怎么搞得,然后在公司其他大牛的帮助下,终于解决了这个问题。下面就总结下如何绘制的。要使用的svg图片格式,使用的类是QSvgRender类。具体使用如下: QSvgRenderer m_svgRen

2015-12-11 09:39:42 7953 7

原创 linux挂在文件到系统文件中

mount -t cifs //192.168.1.218/public/赵鑫 opt/public/ -o username=mapsme,password=admin

2015-12-04 10:25:09 441

原创 linux网络服务器

在本次中,学习了一个简单的基于TCP/IP的服务器/客户端。在例子中,利用的是AF_INET域。在linux下,最常用就是AF_INET,AF_UNIX. AF_UNIX是linux文件系统实现的本地要借字。后面的是可以用于包括英特网在内的TCP/IP网络通信的程序。下面来看一个简单的基于TCP/IP的程序例子:#include <iostream>#include<sys/types.h>#i

2015-11-23 15:41:10 438

原创 linux消息列队

消息列队跟管道差不多,但是和管道不同的是,消息列表不用开关。它能够独立于发送和接收进程而存在,这消除在同步命名管道的打开和关闭可能产生的一些困难。主要用到函数有下面几个:int msgctl(int msgid , ing cmd , struct msgid_ds *buf);int msgget(key_t key , ingt msgflg);int msgrcv(i

2015-11-23 10:04:42 653

原创 linux下使用共享内存实现客户端/服务器

在共享内存的使用中,顾名思义,就是实现多个进程中使用同一个内存区域来实现数据的通信。这样就可以实现一个简单的客户端/服务器程序啦。 共享内存使用的函数有下面几个:incldue#ifndef SHM_COM_H#define SHM_COM_H#define TEXT_SZ 2048 //最大的文本大小struct shared_use_st{ int written_by_you;

2015-11-21 14:10:58 2010

原创 linux下信号量的使用

信号量是为了防止在多个程序同时访问一个共享资源发生问题的情况下引入的。在两个进程中对信号量控制的伪代码都是下面这样的semaphore sv = 1;loop forever{p(sv);critical code section;v(sv);noncritical code section;}下面来学习一个信号量使用的例子,在任

2015-11-21 10:44:43 487

原创 linux下使用管道实现一个简单的服务器/客户端

直接上源码 首先是用到的数据结构和头文件的声明和定义//包含客户端和服务器程序都会用到的数据结构等。为了方便使用,//也包含了必要的系统头文件#include<unistd.h>#include<stdlib.h>#include<stdio.h>#include<string.h>#include<fcntl.h>#include<limits.h>#include<sys/typ

2015-11-20 16:42:10 1648

原创 Qt中快捷键使用

好久没写自己的笔记啦,今天用到了关于Qt中接收键盘消息具体方法如下: Qt::KeyboardModifiers modifiers = event->modifiers(); if(modifiers == (Qt::AltModifier | Qt::ControlModifier)) { setCursor(Qt::OpenHandCursor);

2015-11-19 18:08:47 488

原创 linux下make命令和makefile文件学习

make命令和makefile文件的就诶和提供了一个在项目管理领域十分强大的工具。它不仅被用于控制源代码的编译,而且还用于手册页的编写以及将应用程序安装到目标目录。makefile的语法makefile文件由一组依赖关系和规则组成。每个依赖关系由一个目标(即将要创建的文件)和一组该目标所依赖的源文件组成。而规则描述了如何通过这些依赖文件创建目标。一般来说,目标是一个单独的可执行文件。make命

2015-11-13 09:59:23 944

原创 linux下拷贝文件的时候出现权限不够,如何解决

首先是ctrl+alt+t 打开一个终端。然后运行命令 sudo nautilus  。就可以打开一个具有管理员权限的文件管理器啦。然后就可以在不切换到管理员的条件下拷贝文件啦。

2015-10-28 11:03:56 48198 6

原创 在工作中的一点点体会

不知不觉的也工作了差不多快3个月了啊,现在时间不是很紧张,花点时间想下这两个月都学到了什么?从开始进公司高压力环境下3天学习完qt,以及后面学习qml等东西,说难倒是不难,但同样也不是简单的问题,但是从上个月开始,好像生活节奏突然变慢了,每天没好多的事情,基本都在维护相同的项目,给他们提供接口,改接口等。有点无所事事的感觉,然后在自己的空余时间内开始学习linux,但是发现同样是没有目的性的。学习

2015-10-13 14:24:45 672

原创 SpatialLite使用

说实话,这是第一次使用到空间数据库SpatialLite,在前几天解决了一个困扰了我好久的问题,就是如何在查询空间数据库中和某一经纬度最近的数据库中有的经纬度的水深点,最后通过一个偏移变量来解决了,具体sql去下。 destLon -= 0.001* 2^n <= destLon <= destLon += 0.001* 2^n destLat -= 0.001*

2015-10-12 10:41:57 3640

原创 设计模式-----------------(Interpreter模式)解释器模式

解释器的目的就是使用一个解释器为用户提供一个一门语言的语法表示的解释器,然后通过这个解释器来解释语言中的句子。下面就来写下这个结构图的具体实现。class Context; class AbstractExpression; class TerminalExpression:public AbstractExpression; class NonterminalExpression: publ

2015-09-29 15:44:43 348

原创 Josephus问题求解

今天徒弟问了我这样的一个问题,当时想了很久才把他解决了。其实也不是什么很难得问题,主要是自己的思维被局限了。被局限到那些所谓的库了,比如STL什么的了。所以一时没有想到什么好办法,后来才想到用循环链表去解决它。下面就来学习下这个问题吧。 编号为1 ,2 ,3 …..,n的n个人按顺时针方向围坐成一圈,每个人持有一个密码,现在给定一个随机数m> 0 , 从编号为1的热开始,按照顺时针顺序从1开始报数

2015-09-24 23:38:52 947

原创 qml学习--------------图形的变换

qml也能像qt 中的QPainter一样,支持多种图形变换,比如:tranlsate() , rotate() , scale() , shear()等。 要注意的就是translate使用的原点是当前的原点,所以在使用后最后把它平移到以前的原点去。下面就通过一个具体的例子学习:import QtQuick 2.2Canvas{ width: 480; height: 640;

2015-09-23 13:21:45 967

原创 qml学习--------------利用Canvas绘制图片

Context2D中有三种不同的方式来绘制图片,其中的image可以是一个image元素,一个图片URL,或者是CanvasImageData。import QtQuick 2.2Rectangle{ width: 480; height: 400; id: root; //绘制一个随机像素的图片 Canvas{ id: randomImageDat

2015-09-23 11:28:11 5331

原创 qml学习---------------利用Canvas绘制文本

在利用Canvas绘制文本的时候,可以指定文本不同的风格。 Context2D中和文本相关的方法有3个: fillText() , strokeText() , text();使用方法就下面两种: ctx.beginPath(); ctx.text(“stroken text” ,100 , 100); ctx.stroke();或者是另外的一种使用方法: ctx.strokeText(“

2015-09-23 11:23:08 3260

原创 qml学习--------------利用Canvas绘制简单图形

在qml中,要实现绘图,就必须要用到下面的东西: Canvas: 画布 context: 画师 Pen: 画笔 Brush: 画刷 坐标系: qml中,画布的原点是在左上角的。在qml中要设置上面的属性需要通过一下的代码来实现:在onPaint信号中 { var ctx = getContext(“2d”); ctx.lineWidth = 2; ctx.strokeStyle

2015-09-23 11:19:24 6613

原创 qml学习-------------Slider(滑块)

Slider跟其他的控件一样,可以通过SliderStyle来设置滑块的风格。import QtQuick 2.2import QtQuick.Controls 1.2import QtQuick.Controls.Styles 1.2Rectangle{ width: 320; height: 240; color: "lightgray"; Row{

2015-09-22 13:36:50 5750

原创 qml学习------------------TabView

本次学习了tabview的使用,tabview的使用非常简单的,但是要做出非常漂亮的TabView就很难了,就需要依靠他的TabViewStyle来自定义属性了。import QtQuick 2.2import QtQuick.Controls 1.2import QtQuick.Controls.Styles 1.2import QtQuick.Layouts 1.1Rectangle{

2015-09-22 13:07:11 3552 1

原创 qml学习----------------(progressBar)进度条的学习

今天学习了进度条的使用。查了下qt的官方文档,进度条主要有以下的属性 hovered : bool indeterminate : bool maximumValue : real minimumValue : real orientation : int //决定是水平的还是竖直的 style : Component value : real可以通过style来加载一个progre

2015-09-22 10:31:32 8970 3

原创 qml学习-----------GroupBox(分组框)和ComboBox(组合框)

在日常软件中,分组框和组合框也是经常用到的,其中组合框是有一个单行编辑框和一个下拉菜单组成的。 它的值可以通过model , 或者ListModel来进行操作。 然后也可以像单选框复选框一样的来自定义风格。下面就来一起学下把:import QtQuick 2.2import QtQuick.Controls 1.2import QtQuick.Controls.Styles 1.2Recta

2015-09-21 16:17:29 5028

原创 qml学习----------(CheckBox)复选框的使用

在qml中,复选框跟单选框的用法差不多,只是多了几个属性。CheckBoxStyle用法也跟RadioBoxStyle一样,下面还是来看看学习的代码把:import QtQuick 2.2import QtQuick.Controls 1.2import QtQuick.Controls.Styles 1.3Rectangle{ width: 320; height: 300;

2015-09-21 16:13:02 6941

原创 qml学习------------(RadioButton)单选框

本次学习了qml中的单选框的使用,在单选框的使用过程中,用到了一些的关联的东西,这里都来总结下,当做学习。 1。ExclusiveGroup (互斥分组),用来将若干个元素组合在一起,只需要设置一个id就是了 2. 定了单选框的风格组件(Component),在其中通过RadioButtonStyle来设置 单选框的风格,同时设置选中状态下的文本颜色其他的东西都在以前都学过了,都是一些常用的组

2015-09-18 15:24:48 5535

The Swift Programming Language

苹果官方 The Swift Programming Language 文档 苹果 IOS Swift编程语言 pdf版 2014年6月3日发布,替代OBJECT-C 我们已经使用Objective C超过20多年了,该换换口味了,一个全新的语言Swift被苹...

2014-06-03

设计模式c++版

设计模式的c++版,详细介绍了工厂模式等一系列的开发模式

2014-04-17

windows网络编程

目者者录 译者序 前言 第一部分 传统网络API 第1章 NetBIOS 1 1.1 Microsoft NetBIOS 2 1.1.1 LANA编号 2 1.1.2 NetBIOS名字 4 1.1.3 NetBIOS特性 6 1.2 NetBIOS编程基础 7 1.3 常规NetBIOS例程 8 1.3.1 会话服务器:异步回调模型 15 1.3.2 会话服务器:异步事件模型 20 1.3.3 NetBIOS会话客户机 24 1.4 数据报的工作原理 28 1.5 其他NetBIOS命令 40 1.5.1 适配器状态 40 1.5.2 查找名字 42 1.5.3 将传送协议同LANA编号对应起来 43 1.6 平台问题 43 1.6.1 Windows CE 44 1.6.2 Windows 9x 44 1.6.3 常规问题 44 1.7 小结 44 第2章 重定向器 45 2.1 通用命名规范 45 2.2 多UNC提供者 47 2.3 网络提供者 47 2.4 重定向器简介 48 2.5 服务器消息块 48 2.6 安全问题 49 2.6.1 安全描述符 49 2.6.2 访问令牌 51 2.7 网络安全 51 2.8 一个实例 52 2.9 小结 53 第3章 邮槽 54 3.1 邮槽实施细节 54 3.1.1 邮槽的名字 54 3.1.2 消息的长度 55 3.1.3 应用程序的编译 56 3.1.4 错误代码 57 3.2 基本客户机/服务器 57 3.2.1 邮槽服务器的详情 57 3.2.2 邮槽客户机的详情 59 3.3 其他邮槽API 61 3.4 平台和性能问题 62 3.4.1 8.3字符名字限制 62 3.4.2 不能取消“凝结”的I/O请求 62 3.4.3 超时引起的内存废弃 64 3.5 小结 65 第4章 命名管道 66 4.1 命名管道的实施细节 66 4.1.1 命名管道命名规范 67 4.1.2 字节模式及消息模式 67 4.1.3 应用程序的编译 67 4.1.4 错误代码 68 4.2 客户机与服务器的基础 68 4.2.1 服务器的细节 68 4.2.2 高级服务器的细节 74 4.2.3 客户机的细节 81 4.3 其他API调用 83 4.4 平台和性能问题 86 4.5 小结 87 第二部分 Winsock API 第5章 网络原理和协议 89 5.1 协议的特征 89 5.1.1 面向消息 89 5.1.2 面向连接和无连接 91 5.1.3 可靠性和次序性 91 5.1.4 从容关闭 92 5.1.5 广播数据 92 5.1.6 多播数据 92 5.1.7 服务质量 92 5.1.8 部分消息 93 5.1.9 路由选择的考虑 93 5.1.10 其他特征 93 5.2 支持的协议 93 5.2.1 支持的Win32网络协议 93 5.2.2 Windows CE网络协议 94 5.3 Winsock 2协议信息 94 5.4 Windows套接字 97 5.5 具体平台的问题 99 5.6 选择适当的协议 100 5.7 小结 100 第6章 地址家族和名字解析 102 6.1 IP 102 6.1.1 TCP 102 6.1.2 UDP 102 6.1.3 定址 102 6.1.4 创建套接字 105 6.1.5 名字解析 105 6.2 红外线套接字 107 6.2.1 定址 107 6.2.2 名字解析 108 6.2.3 红外线设备列举 108 6.2.4 查询IAS 110 6.2.5 创建套接字 111 6.2.6 套接字选项 112 6.3 IPX/SPX 112 6.3.1 编址 112 6.3.2 创建套接字 112 6.4 NetBIOS 115 6.4.1 定址 115 6.4.2 创建套接字 116 6.5 AppleTalk 117 6.5.1 定址 117 6.5.2 AppleTalk名的注册 118 6.5.3 AppleTalk名的解析 119 6.5.4 创建套接字 124 6.6 ATM 124 6.6.1 定址 125 6.6.2 创建套接字 128 6.6.3 把套接字和SAP绑定在一起 129 6.6.4 名字解析 130 6.7 Winsock 2支持的其他函数 130 6.8 小结 131 第7章 Winsock基础 132 7.1 Winsock的初始化 132 7.2 错误检查和控制 134 7.3 面向连接的协议 134 7.3.1 服务器API函数 134 7.3.2 客户机API函数 138 7.3.3 数据传输 140 7.3.4 流协议 144 7.3.5 中断连接 146 7.3.6 综合分析 147 7.4 无连接协议 155 7.4.1 接收端 155 7.4.2 发送端 156 7.4.3 基于消息的协议 157 7.4.4 释放套接字资源 158 7.4.5 综合分析 158 7.5 其他API函数 165 7.6 Windows CE 168 7.7 其他地址家族 169 7.7.1 AppleTalk 169 7.7.2 IrDA 169 7.7.3 NetBIOS 170 7.7.4 IPX/SPX 170 7.7.5 ATM 171 7.8 小结 171 第8章 Winsock I/O方法 172 8.1 套接字模式 172 8.1.1 锁定模式 173 8.1.2 非锁定模式 175 8.2 套接字I/O模型 176 8.2.1 select模型 176 8.2.2 WSAAsyncSelect 179 8.2.3 WSAEventSelect 183 8.2.4 重叠模型 188 8.2.5 完成端口模型 198 8.3 I/O模型的问题 206 8.4 小结 206 第9章 套接字选项和I/O控制命令 207 9.1 套接字选项 207 9.1.1 SOL_SOCKET选项级别 208 9.1.2 SOL_APPLETALK选项级别 215 9.1.3 SOL_IRLMP选项级别 218 9.1.4 IPPROTO_IP选项级 222 9.1.5 IPPROTO_TCP选项级别 227 9.1.6 NSPROTO_IPX选项级别 227 9.2 IOCTLSOCKET和WSAIOCTL 231 9.2.1 标准I/O控制命令 232 9.2.2 其他I/O控制命令 233 9.2.3 安全套接字层的I/O控制命令 239 9.2.4 ATM I/O控制命令 241 9.3 小结 242 第10章 名字注册和解析 243 10.1 背景知识 243 10.2 名字空间模型 243 10.3 服务的注册 245 10.3.1 安装服务类 245 10.3.2 服务的注册 248 10.3.3 服务注册示例 251 10.4 服务的查询 254 10.4.1 怎样对服务进行查询 255 10.4.2 查询DNS 257 10.5 小结 260 第11章 多播 261 11.1 多播的含义 261 11.2 IP多播 264 11.2.1 Internet网关管理协议 264 11.2.2 IP叶节点 265 11.2.3 IP多播的实施 266 11.3 ATM多播 266 11.3.1 ATM叶节点 267 11.3.2 ATM根节点 267 11.4 多播与Winsock 268 11.4.1 Winsock 1多播 268 11.4.2 Winsock 2多播 274 11.4.3 常用的Winsock选项 288 11.4.4 拨号网络多播的一处限制 290 11.5 小结 291 第12章 常规服务质量 292 12.1 背景知识 292 12.1.1 资源预约协议 292 12.1.2 网络组件 293 12.1.3 应用组件 294 12.1.4 策略组件 296 12.2 QoS和Winsock 296 12.2.1 QoS结构 297 12.2.2 QoS调用函数 299 12.3 QoS中止 303 12.4 QoS编程 311 12.4.1 RSVP和套接字类型 312 12.4.2 QoS通知 314 12.4.3 QoS模板 316 12.5 示例 318 12.5.1 单播TCP 318 12.5.2 单播UDP 336 12.5.3 多播UDP 337 12.6 ATM和QoS 338 12.7 小结 339 第13章 原始套接字 340 13.1 原始套接字的创建 340 13.2 Internet控制消息协议 341 13.2.1 Ping示例 342 13.2.2 Traceroute示例 351 13.3 Internet组管理协议 352 13.4 IP_HDRINCL的使用 354 13.5 小结 362 第14章 Winsock 2服务提供者接口 363 14.1 SPI基础 363 14.1.1 SPI命名规则 364 14.1.2 Winsock 2 API和SPI函数之间的映 射 364 14.2 传输服务提供者 364 14.2.1 WSPStartup 365 14.2.2 参数 366 14.2.3 实例计数 369 14.2.4 套接字句柄 369 14.2.5 Winsock I/O模型支持 371 14.2.6 扩展函数 380 14.2.7 传输服务提供者的安装 381 14.3 命名空间服务提供者 386 14.3.1 名字空间的安装 386 14.3.2 名字空间的实施 387 14.3.3 名字空间提供者示范 392 14.4 Winsock SPI函数的调试追踪 396 14.5 小结 396 第15章 微软Visual Basic Winsock控件 397 15.1 属性 397 15.2 方法 398 15.3 事件 399 15.4 UDP示例 400 15.4.1 UDP消息的发送 403 15.4.2 UDP消息的接收 404 15.4.3 获取Winsock信息 404 15.4.4 运行UDP示例 405 15.4.5 UDP状态 405 15.5 TCP示例 406 15.5.1 TCP服务器 412 15.5.2 TCP客户机 413 15.5.3 获取Winsock信息 414 15.5.4 运行TCP示例 414 15.5.5 TCP状态 415 15.6 存在的局限 415 15.7 常见错误 416 15.8 Windows CE的Winsock控件 417 15.8.1 Windows CE Winsock示例 417 15.8.2 已知的问题 421 15.9 小结 422 第三部分 远程访问服务 第16章 RAS客户机 423 16.1 编译和链接 424 16.2 数据结构和平台兼容问题 424 16.3 DUN 1.3升级和Windows 95 425 16.4 RASDIAL 425 16.4.1 同步模式 427 16.4.2 异步模式 428 16.4.3 状态通知 432 16.4.4 关闭连接 432 16.5 电话簿 433 16.5.1 电话簿条目的增添 440 16.5.2 电话簿条目的重命名 442 16.5.3 电话簿条目的删除 442 16.5.4 电话簿条目的列举 443 16.5.5 用户凭据的管理 443 16.5.6 多链接电话簿的子条目 445 16.6 连接管理 446 16.7 小结 450 第四部分 附录录录 附录A NetBIOS命令索引 451 附录B IP助手函数 464 附录C Winsock错误代码 481

2013-12-20

深度探索c++对象

目录 本立道生(侯捷 译序) III 目录 VII 前言(Stanley B. Lippman) XIII 第0章 导读(译者的话) XXV 第1章 关于对象(Object Lessons) 1 加上封装后的布局成本(Layout Costs for Adding Encapsulation) 5 1.1 C++对象模式(The C++ Object Model) 6 简单对象模型(A Simple Object Model) 7 表格驱动对象模型(A Table-driven Object Model) 8 C++对象模型(The C++ Object Model) 9 对象模型如何影响程序(How the Object Model Effects Programs) 13 1.2 关键词所带来的差异(A Keyword Distinction) 15 关键词的困扰 16 策略性正确的struct(The Politically Correct Struct) 19 1.3 对象的差异(An Object Distinction) 22 指针的类型(The Type of a Pointer) 28 加上多态之后(Adding Polymorphism) 29 第2章 构造函数语意学(The Semantics of Constructors) 37 2.1 Default Constructor的构造操作 39 "带有Default Constructor"的Member Class Object 41 "带有Default Constructor"的Base Class 44 "带有一个Virtual Function"的Class 44 "带有一个Virtual Base Class"的Class 46 总结 47 2.2 Copy Constructor的构造操作 48

2013-12-20

c++编程实例

里面介绍了很多的关于c++开发的知识,值得新手的学习与借鉴。里面的程序简单易懂

2013-12-20

汇编语王爽言习题答案

这个文档是汇编语言(王爽)的课后习题答案,里面讲解的非常的详细,很适合查阅

2013-12-20

vc++游戏程序设计

这本书介绍了基本的vc++游戏开发,适合新手学习用,角色扮演类游戏

2013-12-20

the c++11 standard library

C+新标准,在里面描述了在新的c++标准库中的新用法,很值得一看的书籍

2013-12-20

空空如也

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

TA关注的人

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