原创 CEdit創建

m_objCpointEditPostion.top = 0;m_objCpointEditPostion.left = 0;m_objCpointEditPostion.right = 200;m_objCpointEditPostio

原创 CStatic

靜態文本,label  picxbox 靜態控件默認不可以接收消息,其ID是一樣的,不能增加消息,想增加消息,改變IDC,並且改變Notify屬性後纔可以接受消息,在創建時候傳參SS_NOTIFY,或者嚮導中選擇 GetDlgItem 返

原创 幾種常見鉤子 解釋

Detours 這個函數庫可以幫助我們HOOK任意API,原理是兩個一個是IAT一個是JMP指向方法 從現在開始,介紹全部鉤子類型,一共有15種。由於本人現在使用C#,所以將原文中的Function都翻譯爲了“方法”,實際上翻譯爲“函數

原创 vc++ 向其他進程注入代碼的三種方法

vc++ 向其他進程注入代碼的三種方法 2008-11-21 07:32:31| 分類: C VC++ | 標籤: |字號大中小 訂閱 導言: 我們在Code project(www.codeproject.com)

原创 進程權限

SE_DEBUG_NAME調試級別,可以用來關機等 ring3下不能提升到SYSTEM級別的。要想獲得SYSTEM權限,只能是做成service等 原來X86的設想是:  ring   0   系統內核  ring   1   系統應用

原创 C 語言文件存儲 文本 2進制

都是2進制的方式存儲在磁盤上面,是內存中數據在磁盤上的另一種方式。 注意,選擇合適的方式。 文本:會轉化字符,如10  如轉化成 10 13回車會轉化,長度增加  ,當讀入時候遇到 10 13會合並(這種方式對於圖片聲音是災難性的) 2進

原创 更改消息路由Command

MFC中Command消息包含菜單工具欄等命令消息和控件的Notify消息,其消息流動比較複雜。 大體概括如下, 系統維護 窗口句柄和對象指針的表,VIEW或者Frame類產生消息找到相應的指針調用 OnCommand  其中改寫了OnC

原创 線程同步 線程死鎖

內核對象  互斥對象  事件對象(自動)  多個進程內線程  慢 但是有超時  Mutex理解爲房間和鑰匙(這個時候WaitForSingalObject 計數 + 1)【線程ID 計數器(計數器0)這個時候纔可以切換】 線程終止,線程互

原创 獲得字體信息

GetTextMetric 得到字體在屏幕上寬度高度 tmAvgWidth  tmHeigh  CreateSolidCaret  x/8 y GetTextExtend 點贊 收藏 分享 文章舉報

原创 CreateWindow

WS_BORDER 創建一個有邊框的窗口 WS_CAPTION 創建一個有標題欄的窗口 WS_CHILDWINDOW(or WS_CHILD) 創建一個子窗口(不能與WS_POPUP一起使用) WS_CLIPCHILDREN 當在父

原创 鍵盤鉤子修改鍵值

在修改鍵值的時候,需要掛住WH_GETMSG 掛住WM_KEYBORD是不可以的。一個按鍵 你會不清楚對方使用WM_KEYdwon KEYUP WM_CHAR哪個消息的,最好全部掛鉤 #define DLL_EXPORTS #inc

原创 內核對象 Event

人工重置Event CreateEvent(NULL,TRUE,TRUE) 但EVNET有效時候,所有調度線程可用,因爲操作系統沒有保證  下面是原子操作,可能大家都可以執行 WaiteForSignalObject Reset() 例如

原创 CDialog 模態對話框 非模態

模態對話框可以用局部變量,DoModal   點擊OK CANCLE 窗口被銷燬   EndDialog( int nRetCode); 非模態局部變量是不可以的   Create  Show 點擊OK CANCLE窗口被隱藏了,沒有銷燬

原创 ini reg

GetPrivateProfile 可以寫入自己指定的自己文件 WriteProfileString //根據系統,選擇到底寫入註冊表還是win.ini 點贊 收藏 分享 文章舉報

原创 VC 文字處理

//實現插入符打字,退格回車的思路。用的是TextOut 和DrawText設定的矩形會將字體截斷,可以結合Timer實現LRC字幕的變化效果。 CClientDC dc(this); if(nChar ==0x0D) {