首先在cheat.cpp的
開闢乙個執行緒 :
initinstance()
去做uithread這件事
g_huithread是乙個全域性控制代碼
加lpthread_start_routine 強制編譯強轉
g_huithread =::
createthread
(null,0
,(lpthread_start_routine
)uithread,
null,0
,0);
然後在外面新增全域性變數
handle g_huithread;
//預設初始化為空
handle g_hfreethread;
在外面新增 uithread 介面
void
uithread
(void
*param)
會變成這樣子
// 會變成這樣子
#include "stdafx.h"
#include "cheat.h"
#ifdef _debug
#define new
debug_new
#endif
begin_message_map
end_message_map()
:()handle g_huithread;
//**********
void
uithread
(void
*param)
//**********
:initinstance()
//程式先執行這裡
把建立的視窗,右擊 新增類,加入到頭檔案和原始檔,標頭檔案會出現cmainview.h
在cheat.cpp新增標頭檔案
#include "cmainview.h"
(搭建框架)把資源切換到我們的模組中最後釋放掉
afx_manage_state
(afxgetstaticmodulestate()
);
hinstance hresold =
afxgetresourcehandle()
;
afxsetresourcehandle
;
把cmainview視窗叫出來,設定元素為模態視窗,類似關於,幫助等等的視窗,不把它關掉是無法進行下一步的
cmainview* maindlg =
newcmainview()
; maindlg-
>
domodal()
;
delete maindlg;
//關掉後,釋放掉
maindlg =
null
;//好習慣
g_hfreethread =
createthread
(null,0
,(lpthread_start_routine0,
0);closehandle
(g_huithread)
;//釋放介面執行緒的控制代碼
closehandle
(g_hfreethread)
;//釋放銷毀執行緒的控制代碼
afxsetresourcehandle
(hresold)
;// 使用舊控制代碼
完成後的完整**:
// 完成後的完整**
#include "stdafx.h"
#include "cheat.h"
#include "cmainview.h"
#ifdef _debug
#define new
debug_new
#endif
begin_message_map
end_message_map()
:()handle g_huithread;
handle g_hfreethread;
void
uithread
(void
*param)
:initinstance()
Eaglooe 學習日記1
開發環境配置 進入vs 開始寫 建立乙個mfc dll 預設設定 選擇共享,勾上安全開發生命週期 名稱 cheat 出現四個標頭檔案 cheat.h resource.h stdafx.h targetver.h 三個原始檔 cheat.cpp 主要碼 的地方 cheat.def 做外掛程式不需要動...
學習日記2
陣列的初始化,一維陣列和二維陣列的定義以及使用,字元陣列的定義和使用,函式的形式引數和實際引數,全域性變數和區域性變數,變數的儲存類別,預處理命令。今日任務完成情況 本日任務按照老師要求完成 今日開發中出現的問題彙總 編譯程式的出錯,演算法結構的不正確和不完整,以往的冒泡函式沒有記牢,對於陣列元素和...
php學習日記2
define name,value,case insensitive 定義乙個常量,常量與變數的區別在於不用加 而且常量的值無法被更改。語法為,define name 常量名 value 常量值 case insensitive 大小寫敏感 預設為false,即對大小寫敏感,可以設定為true,對大...