原创 學習Hook

基本概念  鉤子(Hook),是Windows消息處理機制的一個平臺,應用程序可以在上面設置子程以監視指定窗口的某種消息,而且所監視的窗口可以是其他進程所創建的。當消息到達後,在目標窗口處理函數之前處理它。鉤子機制允許應用程序截獲處理w

原创 mfc DDX_TEXT() 和 DDX_Control()

DDX_TEXT()  和 DDX_Control() DDX_TEXT()的作用可以理解爲把字符串變量和控件的文本(WindowText)關聯起來,  DDX_Control()的作用可以理解爲把變量和控件本身關聯起來,  DoData

原创 WinSock 異步I/O模型[1]---選擇模型 - select

1.選擇(select)模型: 選擇模型:通過一個fd_set集合管理套接字,在滿足套接字需求後,通知套接字。讓套接字進行工作。 選擇模型的核心是FD_SET集合和select函數。通過該函數,我們可以們判斷套接字上是否存在數據,或者能

原创 Windows VisualStudio2015 各版本下載地址

社區版(個人免費): http://download.microsoft.com/download/B/4/8/B4870509-05CB-447C-878F-2F80E4CB464C/vs2015.com_chs.iso 專業版: ht

原创 網絡編程----網絡編程概述[1]

1.Socket Api 版本: 在Windows平臺上主要有兩個版本的Socket Api函數: WinSock 1.1 和 WinSock 2.2,2.2版本默認兼容1.1版本, 1.1 winsock.h wsock32.lib w

原创 網絡編程--- 通用Socket函數[2]

1.Socket頭文件的包含及庫的鏈接: #include <WinSock2.h> #pragma comment(lib, "ws2_32.lib") 2.初始化和卸載 WSAStartup int WSAStartup(

原创 WaitForSingleObject(四)

 Windows提供了許多內核對象來實現線程的同步。對於線程同步而言,這些內核對象有兩個非常重要的狀態:“已通知”狀態,“未通知”狀態(也有翻譯爲:受信狀態,未受信狀態)。Windows提供了幾種內核對象可以處於已通知狀態和未通知狀態:進

原创 線程同步之一(一)

1.原子互鎖家族函數: 1、InterlockedIncrement:加1操作; 2、InterlockedDecrement:減1操作; 3、InterlockedExchangeAdd:加上“指定”的值,可以加上一個負數; 4、Int

原创 SuspendThread、ResumeThread(二)

1.SuspendThread SuspendThread是掛起指定的線程,不同於Sleep只能掛起其所在的線程並在時間間隔超過後自動回覆,而SuspendThread掛起的線程則需要使用ResumeThread回覆。 SuspendTh

原创 多線程函數CreateThread(一)

採用CreateThread創建多線程程序 在window環境下,Win32 提供了一系列的API函數來完成線程的創建、掛起、恢復、終結以及通信等工作: 1、主要的函數列表: 序號 函數名 功能 1 CreateThre

原创 多線程(三)

1.線程的優先級: 線程的相對優先級有以下取值: THREAD_PRIORITY_TIME_CRITICAL:Time-critical,關鍵時間(最高) THREAD_PRIORITY_HIGHEST:Highest,最高(其實是“次高

原创 一. zlib下載編譯

一.下載 http://www.zlib.net/fossils/(網上找的各個版本都有) 二.編譯 我下載的是zlib-1.2.11,進入目錄zlib-1.2.11/contrib/vstudio/ 可以找到各個版本的解決方案文件,我用

原创 Tinyhttp源碼詳解(帶註釋)

/* J. David's webserver */ /* This is a simple webserver. * Created November 1999 by J. David Blackstone. * CSE

原创 Sqlite3的下載編譯

一.下載 下載地址:https://www.sqlite.org/download.html 我下載的版本 二.編譯動態庫 我用的是VS2015 1.在VS2015中,文件->新建->項目->Win32項目,命名爲sqlite3(其他名

原创 http協議的狀態

http協議的狀態碼 E-Marketing Union of friendship   1xx(臨時響應) 表示臨時響應並需要請求者繼續執行操作的狀態碼。   100(繼續) 請求者應當繼續提出請求。服務器返回此代碼表示已收到請求