摘要: 数据交换的格式,从结构上看,所有的数据(data)最终都可以分解成三种类型:
第一种类型是标量(scalar),也就是一个单独的字符串(string)或数字(numbers),比如"北京"这个单独的词。
第二种类型是序列(sequence),也就是若干个相关的数据按照一定顺序并列在一起,又叫做数组(array)或列表(List),比如"北京,上海"。
第三种类型是映射(mapping),也就是一个名/值对(Name/value),即数据有一个名称,还有一个与之相对应的值,这又称作散列(hash)或字典(dictionary),比如"首都:北京"。
阅读全文
posted @
2011-08-08 11:07 日需博客 阅读(399) |
评论 (0) |
编辑 收藏
摘要: //修改IAT实现本进程API HOOK
//coded by xicao
//QQ:327062448
//E-MAIL:xicao54007@sina.com
#include
#include //ImageDirectoryEntryToData
#pragma comment(lib,"imagehlp.lib")
/************************************************************/
char *szModName = NULL ;
char *szHacked = "不好意思hook到了!" ;
DWORD dwHookFun ;
DWORD dwHookApiAddr;
PIMAGE_IMPORT_DESCRIPTOR pImportDesc ;
PIMAGE_THUNK_DATA32 pThunk;
U 阅读全文
posted @
2011-08-08 11:03 日需博客 阅读(1453) |
评论 (0) |
编辑 收藏
摘要: 两年前就给自己列出了一个读书清单,但进展缓慢,看的经典书籍仍然寥寥可数,惭愧中......
现在将这个书单重新修改,一方面鞭策自己学习,另一方面也表达对大牛们有如滔滔江水般的敬仰之意。
书单中列举的都是相关领域的经典书籍,必读之作。此书单的编辑参考了很多网站,包括一些名家的推荐,例如侯捷,孟岩,荣耀,潘爱民等等,在此也向这些前辈表示感谢。^_^ 阅读全文
posted @
2011-08-08 10:59 日需博客 阅读(580) |
评论 (0) |
编辑 收藏
摘要: UNICODE:它是用两个字节表示一个字符的方法。比如字符'A'在ASCII下面是一个字符,可'A'在UNICODE下面是两个字符,高字符用0填充,而且汉字'程'在ASCII下面是两个字节,而在UNICODE下仍旧是两个字节。UNICODE的用处就是定长表示世界文字,据统计,用两个字节可以编码现存的所有文字而没有二义。
MBCS,它是多字节字符集,它是不定长表示世界文字的编码。MBCS表示英文字母时就和ASCII一样(这也是我们容易把MBCS和ASCII搞混的原因),但表示其他文字时就需要用多字节。
WINDOWS下面的程序设计可以支持MBCS和UNICODE两种编码的字符串,具体用那种就看你定义了MBCS宏还是UNICODE宏。MBCS宏对应的字符串指针是char*也就是LPSTR,UNICODE对应的指针是unsigned short*也就是LPWSTR,为了写程序方便微软定义了类型LPTSTR,在MBCS下他就是char*, 在UNICODE下它是unsigned char*,这样你就可以重定义一个宏进行不同字符集的转换了。 阅读全文
posted @
2011-08-08 10:58 日需博客 阅读(607) |
评论 (0) |
编辑 收藏
摘要: #include "netinet/tcp.h"
int keepAlive = 1; //设定KeepAlive
int keepIdle = 30; //开始首次KeepAlive探测前的TCP空闭时间
int keepInterval = 30; //两次KeepAlive探测间的时间间隔
int keepCount = 3; //判定断开前的KeepAlive探测次数
if(setsockopt(sockfd,SOL_SOCKET,SO_KEEPALIVE,(void*)&keepAlive,sizeof(keepAlive)) == -1)
{
printf("Socket Option setting(SO_KEEPALIVE) fail !\n");
return FALSE;
}
if(setsockopt(sockfd,SOL_TCP,TCP_KEEPIDLE,(void *)&ke 阅读全文
posted @
2011-08-08 10:53 日需博客 阅读(532) |
评论 (0) |
编辑 收藏
摘要: 阅读全文
posted @
2011-08-07 19:18 日需博客 阅读(687) |
评论 (0) |
编辑 收藏
摘要: 如果U盘够大,可以在一个U盘安装slax,pclinuxos,Linux Mint,puppy Linux等多种live linux。移动硬盘原理相同,不做区分。
因为U盘常用来拷贝文件,fat格式在多种操作系统上通用,所以用grub4dos管理U盘引导。
把U盘格成HDD格式:
用DiskGenius 3.2把U盘格式化为USB-HDD格式,推荐使用FAT32分区;或者用U盘格式化工具(HPUSBFW.EXE )格式化为 HDD 格式。还有其它 工具如FlashBoot、 WIN PM 等。
将引导代码写入U盘mbr:
Win32下,运行grubinst_gui.exe ,在“磁盘”处选中U盘,在“选项”区选中“不保存原来的mbr”、“不引导原来的mbr”、“启动时不搜索软盘”、“输出详细信息”,点击“安装”即可。
拷贝grub4dos的grub.exe、grldr、menu.lst到u盘根目录。
现在,U盘已经可以用grub引导,把电脑设置为U盘优先引导,测试一下grub的引导。
安装linux live cd的过程分 阅读全文
posted @
2011-08-06 00:18 日需博客 阅读(1974) |
评论 (0) |
编辑 收藏
摘要: 背景(只是个人感想,技术上不对后面的内容构成知识性障碍,可以skip):
最近,基于某些原因和需要,笔者需要去了解一下Crypto++库,然后对一些数据进行一些加密解密的操作。
笔者之前没接触过任何加密解密方面的知识(当然,把每个字符的ASCII值加1之流对明文进行加密的“趣事”还是干过的,当时还很乐在其中。),甚至一开始连Crypto++的名字都没有听过,被BS了之后,就开始了Crypto++的入门探索过程。
最初,大概知道了要了解两大类算法中的几个算法——对称加密算法:DES、AES(后来因为人品好的缘故也了解了下非对称加密算法RSA,后文会详述何谓“人品好”);散列算法(需要通过Hash运算):SHA-256。
起初,笔者以为这样的知名算法在网上应该有很多现成的例子。笔者比较懒,对于自己不熟悉的东西,总希望找捷径,直接找别人现(在已经写)成可(编译运)行的代码然后施展ctrl + C,ctrl + V算法(咳,什么算法,是大法!!!)。
However,发觉网上的例子不是稀缺,就是只有代码没有解释。笔者觉得很难忍受这样的“莫名其妙”(奇怪的 阅读全文
posted @
2011-08-05 16:37 日需博客 阅读(1776) |
评论 (0) |
编辑 收藏
摘要: 从官方网下载的Crypto++库是开源的,只有源文件和几个可以生成lib、dll的工程,以及一个使用的例子工程,因此希望生成自己建的工程能使用的SDK。
1.编译链接生成cryptlib.lib
打开cryptest.sln,分别在Debug模式和Release模式下编译链接cryptlib工程,成功后会在cryptopp54\\Win32\\output\\debug和cryptopp54\\Win32\\output\\release下生成cryptlib.lib文件。作者当时用的是Crypto++ 5.4版本。
Build时方法是,右击Solution Explorer中的cryptlib工程,单击build。第一次时它会报错说“d:\\cryptopp54\\adler32.cpp(3) : fatal error C1033: cannot open program database ’d:\\cryptopp54\\win32\\cryptlib\\debug\\vc80.idb’”,没关系,按这样再build一次,就 阅读全文
posted @
2011-08-05 16:24 日需博客 阅读(5213) |
评论 (0) |
编辑 收藏
摘要: 首先,先上效果代码
1//********************************************************************
2// TESTCLASS.H 文件注释
3// 文件名 : TESTCLASS.H
4// 文件路径: J:\CODING\TEST\C++解疑\CYUYAN\
5// 作者 : RIPPLE
6// 创建时间: 2009/10/3 11:02
7// 文件描述:
8//*********************************************************************
9#ifndef _H_TESTCLASS_H_
10#define _H_TESTCLASS_H_
11
12#include
13using namespace std; 阅读全文
posted @
2011-08-05 09:12 日需博客 阅读(1726) |
评论 (0) |
编辑 收藏