12 2010 档案
命令行下的强力抗毒武器
摘要:早在几年前,就有先知先觉的网友感叹道:人在网上漂,哪能不中标。如今,电脑中招更是成了家常便饭。面对来势汹汹的病毒木马们,杀毒软件和防火墙自然是一个都不能少。但有时还是有许多仅仅依靠杀毒软件和防火墙对付不了的顽固分子,这时该怎么办呢?其实在Windows系统的命令行中,已为我们提供了一些非常有用的工具,充分利用就会变成我们对抗病毒的强力武器。下面我们就来看看命令行下的强力抗毒武器。一、TASKLIST——火眼金睛 如今的病毒越来越狡猾,常常不见首也不见尾。但许多病毒往往在进程这一环节中露出狐狸尾巴,因而查看进程是查杀病毒的一个重要的方法。命令行提供了进程查看的命令工具——Tasklist(Wi. 阅读全文
posted @ 2010-12-30 08:48 chingliuyu 阅读(150) 评论(0) 推荐(0)
揭开Socket编程的面纱
摘要:揭开Socket编程的面纱Posted on 2005-12-10 22:59源码工作室阅读(42903)评论(70)编辑收藏所属分类:网络编程 对TCP/IP、UDP、Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵。那么我想问:1.什么是TCP/IP、UDP?2.Socket在哪里呢?3.Socket是什么呢?4.你会使用它们吗?什么是TCP/IP、UDP?TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,是一个工业标准的协议集,它是为广域网(WANs)设计的。UDP(Us 阅读全文
posted @ 2010-12-21 09:40 chingliuyu 阅读(200) 评论(1) 推荐(1)
读取PE文件的导入表
摘要:读取PE文件的导入表 在上一篇文章里,我使用一个 TreeList 控件,展示了 PE 文件的内容。在那里可充分了解PE的文件头的信息,但是对 section(备注:常见译文为节,段,块)的一些信息我们还没有涉及。比如全局变量等数据,代码,资源,导入表等信息都位于相应的 section 中,有些 section 通常具有特定的名字,例如资源通常位于 .rsrc,代码通常位于 .text,导入表通常位于 .idata 段,等等。文本讲述的是把一个PE文件的导入表打印出来。我注意到 MS 提供了一个比较有用的函数,ImageRvaToVa,我们稍后主要借助这个函数去从RVA定位我们的目标数据... 阅读全文
posted @ 2010-12-20 11:28 chingliuyu 阅读(365) 评论(0) 推荐(0)
自适应 sprintf源码
摘要://#include "stdafx.h"#define INCLUDE_STRING#ifdef INCLUDE_STRING #include "string.h"#endif#ifdef KERNEL #define NOFLOAT#endif#define sprintf my_sprintf#define vsprintf my_vsprintf#define atoi my_atoi#define ftoa my_ftoa#define strnlen my_strnlen#define DOUBLE_ZERO double(1E-307)# 阅读全文
posted @ 2010-12-20 11:08 chingliuyu 阅读(1005) 评论(0) 推荐(1)
Linux环境下的C/C+基础调试技术2——程序控制
摘要:Author:gnuhpcWebSite:blog.csdn.net/gnuhpc1.让程序停下来的三种模式断点(breakpoint):让程序在特定的地点停止执行。观察点(watchpoint):让程序在特定的内存地址(或者是一个涉及多个地址的表达式)的值发生变化时停止执行。注意,你不能给一个尚没有在栈帧中的表达式或变量设定观察点,换句话说,常常在程序停下来后才去设置观察点。在设定观察点后,栈帧中不存在所监控的变量时,观察点自动删除。捕捉点(catchpoint):让程序在发生特定事件时停止执行。注:GDB文档中统称这三种程序暂停手段为breakpoint,例如在GDB的delete命令的帮 阅读全文
posted @ 2010-12-08 11:05 chingliuyu 阅读(167) 评论(0) 推荐(0)
Linux环境下的C/C++基础调试技术1——初步了解
摘要:Linux环境下的C/C++基础调试技术1——初步了解Author:gnuhpcWebSite:blog.csdn.net/gnuhpc1.调试技术的几个准则惊喜准则:找到错误是一种惊喜,心理上不要畏惧而是要怀着感恩的心去面对。从小处开始准则:刚开始测试的使用从小处着手,暂时不涉及边界数据,虽然这样可能会掩盖一些Bug,但是这样或许能查到最主要的Bug,例如你的程序包含了一个巨大的循环体,最容易发现的Bug在第一个循环或第二次循环执行的时候。自顶向下准则:优先选择step over而不是step into,以节省时间。Segmentation Fault准则:出现段错误时,第一个想到的不应该是 阅读全文
posted @ 2010-12-06 10:55 chingliuyu 阅读(363) 评论(0) 推荐(0)
标准C++中有四个类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast
摘要:(比如static_cast,相当于c里面的转换,dynamic_cast (父子之间转换),const_cast 去掉常量性.)关于强制类型转换的问题,很多书都讨论过,写的最详细的是C++ 之父的《C++ 的设计和演化》。最好的解决方法就是不要使用C风格的强制类型转换,而是使用标准C++的类型转换符:static_cast,dynamic_cast。标准C++中有四个类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。下面对它们一一进行介绍。static_cast用法:static_cast< type-id > 阅读全文
posted @ 2010-12-03 16:28 chingliuyu 阅读(186) 评论(0) 推荐(0)