自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 资源 (5)
  • 收藏
  • 关注

转载 挂钩Windows API

<br />创建时间:2004-03-06<br />文章属性:原创<br />文章提交:SoBeIt (kinsephi_at_hotmail.com)<br /><br />===========================[ 挂钩Windows API ]==================<br /><br />                                    SoBeIt<br /><br />                       Auth

2011-05-05 12:55:00 309

转载 函数调用堆栈分析

<br />原文链接:http://blog.csdn.net/liigo/archive/2006/12/23/1456938.aspx<br />转载请注明出处:http://blog.csdn.net/liigo<br />昨天和海洋一块研究了下函数调用栈,顺便写两句。不足或错误之处请包涵!<br />理解调用栈最重要的两点是:栈的结构,EBP寄存器的作用。<br />首先要认识到这样两个事实:<br />1、一个函数调用动作可分解为:零到多个PUSH指令(用于参数入栈),一个CALL指令。CAL

2011-04-29 09:00:00 311

原创 volatile关键字学习

用volatile关键字修饰变量时,会告诉编译器不要进行优化,将变量的值缓存在寄存器里,而是每次使用时都要从变量存储位置重新读取,这可以防止该变量在未知的地方和时候可能被改变。这对于多线程共享的变量等很重要。看下面的例子:#includeint main(){int i = 10;   //未加关键字volatileint a = i;printf("i = %d", a);__asm{mov dword ptr[ebp - 4], 20h}int b = i;printf("i = %d", b);ret

2011-04-28 23:38:00 229

原创 得到网络进程和对应的端口

<br />这是两个未公开的API:<br />最简单的枚举当前所开放的端口信息是调用iphlpapi.dll中的AllocateAndGetTcpTableFromStack和AllocateAndGetUdpTableFromStack函数,或者AllocateAndGetTcpExTableFromStack和AllocateAndGetUdpExTableFromStack函数。<br />用AllocateAndGetTcpExTableFromStack 可以取得进程的PID及对应的端口

2011-04-28 13:21:00 345

转载 strcpy实现

<br />题目: <br />     已知strcpy函数的原型是: <br />         char * strcpy(char * strDest,const char * strSrc); <br />     1.不调用库函数,实现strcpy函数。 <br />     2.解释为什么要返回char *。 <br />     解说: <br />     1.strcpy的实现代码 <br />         char * strcpy(char * strDes

2011-04-28 13:17:00 238

转载 P2P之UDP穿透NAT的原理与实现

<br />P2P之UDP穿透NAT的原理与实现(附源代码)<br /> 作者:shootingstars | 日期:2004-05-25 | 字体:大 中 小<br /> <br />P2P 之 UDP穿透NAT的原理与实现(附源代码)<br />原创:shootingstars<br />参考:http://midcom-p2p.sourceforge.net/draft-ford-midcom-p2p-01.txt<br />论坛上经常有对P2P原理的讨论,但是讨论归讨论,很少有实质的东西产生(源代码

2011-04-27 23:47:00 259

转载 P2P之UDP穿透NAT的原理与实现

<br />P2P之UDP穿透NAT的原理与实现(附源代码)<br /> 作者:shootingstars | 日期:2004-05-25 | 字体:大 中 小<br /> <br />P2P 之 UDP穿透NAT的原理与实现(附源代码)<br />原创:shootingstars<br />参考:http://midcom-p2p.sourceforge.net/draft-ford-midcom-p2p-01.txt<br />论坛上经常有对P2P原理的讨论,但是讨论归讨论,很少有实质的东西产生(源代码

2011-04-27 23:46:00 304

转载 P2P之UDP穿透NAT的原理与实现

<br />P2P之UDP穿透NAT的原理与实现(附源代码)<br /> 作者:shootingstars | 日期:2004-05-25 | 字体:大 中 小<br /> <br />P2P 之 UDP穿透NAT的原理与实现(附源代码)<br />原创:shootingstars<br />参考:http://midcom-p2p.sourceforge.net/draft-ford-midcom-p2p-01.txt<br />论坛上经常有对P2P原理的讨论,但是讨论归讨论,很少有实质的东西产生(源代码

2011-04-27 23:46:00 243

转载 C的xml编程-libxml2

C的xml编程-libxml2<br />    这里主要讲述libxml2在linux下的使用。(以下内容除了linux下的安装步骤是自己写的,其余均出自http://www.blogjava.net/wxb_nudt/archive/2007/11/28/161340.html,由于该篇文章讲解的非常详细,我也没必要重写一遍了。如果该篇文章早出些时候,早期开发我也不会走很多弯路了。虽然在该篇文章出现之前我已经对libxml2较熟悉了并开发完毕,但为了备忘,现在将该篇文章作为收藏之用。在此再次

2011-04-27 17:56:00 459

转载 Linux程式设计入门 - crypt

<br /> crypt是个密码加密函数,它是基於Data Encryption Standard(DES)演算法。 <br />crypt基本上是One way encryption,因此它只适用於密码的使用,不适合於资料加密。 <br />char *crypt(const char *key, const char *salt); <br />key是使用者的密码。salt是两个字,每个字可从[a-zA-Z0-9./]中选出来,因 此同一密码增加了4096种可能性。透过使用key中

2011-04-27 12:33:00 268

转载 Socket编程指南及示例程序

<br />Socket编程指南及示例程序<br />例子代码就在我的博客中,包括六个UDP和TCP发送接受的cpp文件,一个基于MFC的局域网聊天小工具工程,和此小工具的所有运行时库、资源和执行程序。代码的压缩包位置是http://www.blogjava.net/Files/wxb_nudt/socket_src.rar。1         前言<br />在一些常用的编程技术中,Socket网络编程可以说是最简单的一种。而且Socket编程需要的基础知识很少,适合初学者学习网络

2011-04-27 12:19:00 427

转载 TCP的socket连接示例

用C实现的TCP socket连接/读/写操作。采用fcntl设置非阻塞式连接以实现connect超时处理;采用select方法来设置socket读写超时。此示例可被编译运行于Windows/unix系统。源文件connector.c原来的代码在windows下编译不通过,今天qzj问起才发现。因为加了异步的处理,没有对这部分代码进行兼容性处理。本着做学问一丝不苟嘀精神,重新修改了一下源代码。以下代码在VC++6和linux下编译执行通过 :)/* * on Unix: * cc -c con

2011-04-27 12:05:00 471

转载 C++内存管理

C++内存管理详解伟大的Bill Gates 曾经失言:  640K ought to be enough for everybody — Bill Gates 1981   程序员们经常编写内存管理程序,往往提心吊胆。如果不想触雷,唯一的解决办法就是发现所有潜伏的地雷并且排除它们,躲是躲不了的。本文的内容比一般教科书的要深入得多,读者需细心阅读,做到真正地通晓内存管理。1、内存分配方式  内存分配方式有三种:  (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在

2011-04-26 23:41:00 264

转载 vc6.0栈溢出

问题处在include的文件名长度未检测。比如#include "AAAA....AA"(超多A)就会挂。2008-3-3 报告给MS,当天收到答复,说正在研究中。2008-3-4 MS确认这是一个安全缺陷,但说Visual C++ 6.0的产品支持生命周期已经于2005年9月30日结束,因此不会为这个漏洞发布安全公告或安全建议,且建议我不要公开。我差点利用这个漏洞黑了poj(acm.pku.edu.cn,做acm的同学应该都知道这个网站)。可惜功亏一篑,只得到了一台没有价值

2011-04-26 13:01:00 705

转载 #define用法归类

<br />常规用法不再介绍,做如下几点说明和介绍<br />1. 带参数的宏只完成简单字符替换,之前不做计算实参的工作,如下<br />#define SUM(x,y) x+y<br />int a=3,b=2,c=1;<br />int s;<br />s=SUM(a+b,b)*SUM(c,b)+c;<br />            结果应该是 s=a+b+b*c+b+c=10。<br />2. define中的特殊标识符<br />#define Conn(x,y) x##y<br />

2011-04-26 12:51:00 303

基于corba的拍卖系统

基于corba的拍卖系统 分为服务端 客户端 二者通过corba通信

2014-09-27

c++ gui programming with qt4中文版

经典的qt教程 qt是一个很方便的跨平台的gui编程开发平台,包括pc、embedded 越来越受到开发人员的青睐

2011-02-24

Programming with Qt-qt essentials

nokia qt初级认证考试官方培训教材

2011-02-24

The C++ Programming Language

The C++ Programming Language,c++之父写的c++语言的书籍,经典好东西

2009-09-11

一个洗浴管理系统代码

这是一个洗浴管理系统的代码,MFC写的,用到数据库的相关知识

2009-08-25

空空如也

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

TA关注的人

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