原创 Foxmail文件格式

以下內容以foxmail 6.0爲準,在foxmail6.5版本中,*.IND改成了*.INDX,請特別注意! 最近分析了一下Foxmail的工作原理和相關文件的格式,做了以下總結,希望對大家有用。有錯誤之處煩請留言指出,共同進步。

原创 smtp和pop3的關係

SMTP即簡單郵件傳送協議,所對應RFC文檔爲RFC821。同http等多數應用層協議一樣,它工作在C/S模式下,用來實現因特網上的郵件傳送。SMTP在整個電子郵件通信中所處的位置如圖 1所示。      User Agent 1    

原创 linux下多線程 之 pthread_detach(pthread_self())

多線程稍微看了下還能接受沒想象中的難,寫了個示例程序運行修改運行修改幾遍後也大致明白了。寫個碰到的問題,記錄下自己的技術之路點滴 pthread_detach(pthread_self()) linux線程執行和windows不同,pt

原创 POP3重複接收郵件的問題研究

在Outlook 2003中設置了在服務器上保留郵件副本之後,在pst文件中就會生成一個已經接收郵件的列表,稱爲UIDL緩存。UIDL是標誌一個郵箱中唯一一封郵件的標誌。這樣客戶端連接到POP3服務器之後,就可以通過POP3的UIDL命

原创 stun詳解

STUN是RFC3489規定的一種NAT穿透方式,它採用輔助的方法探測NAT的IP和端口。毫無疑問的,它對穿越早期的NAT起了巨大的作用,並且還將繼續在NAT穿透中佔有一席之地。   STUN的探測過程需要有一個公網IP的STUN s

原创 tipc協議詳解

TIPC協議和實現解析 1, TIPC簡介TIPC是愛立信公司提出的一種透明進程間通信協議, 主要適用於高可用(HAL)和動態集羣環境. 該軟件當前主要由風河(windriver)公司在維護, 主要支持L

原创 linux下比grep更快速的檢索工具ack-grep安裝

安裝系統:ubuntu10.04 參考地址:http://beyondgrep.com/install/  ack相比grep的10大優點: 0. 更多用戶感謝信,隨便抽一條:   "That thing is awesome.    P

原创 svn版本回退

使用情況如下: 假如目前代碼版本爲2010,經過測試發現存在問題,於是要回退到2000號版本,於是需要在本地取得2000的版本並上傳至svn服務器, 先在本地取得2010版本代碼,然後使用如下命令 svn merge -r  2010:2

原创 c++中ifstream一次讀取整個文件

c++中一次讀取整個文件的內容的方法: 1. 讀取至char*的情況 [cpp] view plaincopy std::ifstream t;   int length;   t.open("file.txt"

原创 QT項目升級(QT4.6.3到QT5.2)時,遇到的問題和解決方法

QT4 升級到 QT5 改動: PC部分: 【改 QTDIR 變量】 在工程根目錄下找到 .user 文件 ,  如 InnoTabPlugin.vcxproj.user 修改指向你的 QT5 根目錄:   <Property

原创 C++開發必看 四種強制類型轉換的總結

C風格的強制類型轉換(Type Cast)很簡單,不管什麼類型的轉換統統是:      TYPE b = (TYPE)a   C++風格的類型轉換提供了4種類型轉換操作符來應對不同場合的應用。   const_cast

原创 Memcached深度分析

這是本人今年最後一篇文字作品,出得比較急,也相當不全面,最後還是決定貼到村裏來。 明天早上我就回瀋陽過年了,祝大家情人節 & 春節快樂,豬年發財 Memcached深度分析 Memcached是danga.com(運營LiveJ

原创 Linux inotify功能及實現原理

1. inotify主要功能 它是一個內核用於通知用戶空間程序文件系統變化的機制。 衆所周知,Linux 桌面系統與 MAC 或 Windows 相比有許多不如人意的地方,爲了改善這種狀況,開源社區提出用戶態需要內核提供一些機制,以

原创 VS如何添加自定義宏

如何創建宏: 新建一項目名爲:RTSP 菜單》》視圖(View)》》屬性管理器(property manager) 在屬性管理器對話框中找到Micaosoft.Cpp.Win32.User

原创 inotify用法簡介及以之結合rsync實現主機間的文件實時同步

一、inotify簡介 大家可以去https://github.com/rvoicilas/inotify-tools/wiki/看一些相關介紹。     要使用此工具需要Linux Kernel的支持,在2.6.32內核,需要打開CON