摘要: 數據交換的格式,從結構上看,所有的數據(data)最終都可以分解成三種類型:
第一種類型是標量(scalar),也就是一個單獨的字符串(string)或數字(numbers),比如"北京"這個單獨的詞。
第二種類型是序列(sequence),也就是若干個相關的數據按照一定順序并列在一起,又叫做數組(array)或列表(List),比如"北京,上海"。
第三種類型是映射(mapping),也就是一個名/值對(Name/value),即數據有一個名稱,還有一個與之相對應的值,這又稱作散列(hash)或字典(dictionary),比如"首都:北京"。
閱讀全文
posted @
2011-08-08 11:07 日需博客 閱讀(413) |
評論 (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 日需博客 閱讀(1467) |
評論 (0) |
編輯 收藏
摘要: 兩年前就給自己列出了一個讀書清單,但進展緩慢,看的經典書籍仍然寥寥可數,慚愧中......
現在將這個書單重新修改,一方面鞭策自己學習,另一方面也表達對大牛們有如滔滔江水般的敬仰之意。
書單中列舉的都是相關領域的經典書籍,必讀之作。此書單的編輯參考了很多網站,包括一些名家的推薦,例如侯捷,孟巖,榮耀,潘愛民等等,在此也向這些前輩表示感謝。^_^ 閱讀全文
posted @
2011-08-08 10:59 日需博客 閱讀(593) |
評論 (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 日需博客 閱讀(616) |
評論 (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 日需博客 閱讀(546) |
評論 (0) |
編輯 收藏
摘要: 閱讀全文
posted @
2011-08-07 19:18 日需博客 閱讀(699) |
評論 (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 日需博客 閱讀(2016) |
評論 (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 日需博客 閱讀(1795) |
評論 (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 日需博客 閱讀(5277) |
評論 (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 日需博客 閱讀(1737) |
評論 (0) |
編輯 收藏