亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? exports.cpp

?? Hook API 實現文件名自動變換。并提供相關的測試程序。
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
/*========================================================================
文件: exports.cpp
說明:全局消息鉤子 
時間:2004-09-15
編寫:oshj || oshj@21cn.com
環境:VC6.0/Win2000 Pro/SP4/1024*768
特別說明:本程序目的是更改其他程序窗口的顯示內容(如數值)。用枚舉主窗口
		  和子窗口的方法只能找到有句柄的控件,發消息進行更改。對無句柄
		  的控件就無能為力了,在spy++里都無法枚舉Delphi/BCB/VB的label控件的
		  只能采用截獲TextOut的方法了,沒想到其他更好的辦法:-)這種就是
		  所謂的屏幕取詞技術了,金山詞霸用的就是這種方法。

版權累死人,想用就用吧:-)
=========================================================================*/
//-------------------------------------------------------------------------
//原理:
//	采用類似屏幕取詞的方式,動態注入DLL到EXE進程。截獲TextOut并判斷當前要寫
//到屏幕的內容是否是數字(Int或者Float等),如果是則×0.5(或其他預先設定的基數)
//然后再寫到屏幕上。
//	所以一定要清楚的認識到:本程序只是臨時欺騙,更改屏幕顯示的數字而已,
//并不更改實際的數據,包括報表打印和數據導出(如導出到Excel等)均無能為力。
//唯一的辦法就是屏蔽,使之無效。或者干脆徹底注銷界面上的這些按鈕。
//已知BUG或缺陷:
//1、時間控件類的時間也被HOOK更改了;
//2、由于HOOK的數據×0.50(或其他基數)之后可能有了少數點,長度增長,可能導致
//	 新寫到屏幕上的數據位置不準確;
//3、類似0010123的序號也被當作數字HOOK了,并×0.5,可以增加類似的判斷;
//	 但由于采用的全局消息鉤子,如果判斷太多會導致系統消耗太大,必須精簡算法。
//4、類似 [1234],:235,...等凡是中文和數字、字母和數字、符號和數字混合的,
//   均會忽略掉,不進行計算。
//5、由于無法更改打印和數據導出等實際數據,所以將包含有“導出”、“Excel”、
//	 “打印”字樣的有句柄的窗口(button、form等)全部注銷!
//-------------------------------------------------------------------------
//; 警告:本程序僅為學習研究作品,不涉及任何商業利益。
//; 請慎重使用,由此產生的一切后果由使用者承擔!
//; FNUM為計算的基數 (0 < FNUM < 1),保留兩位小數點。
//; 如果配置文件損壞或刪除,程序將采用缺省值:0.50
//-------------------------------------------------------------------------
//系統熱鍵定義如下:
//呼叫程序窗口:Alt + A
//徹底隱藏運行:Alt + B 
//開始數據鉤子:Alt + C
//停止數據鉤子:Alt + D
//悄悄退出程序:Alt + E 
//-------------------------------------------------------------------------
#include "exports.h"
#include "hookapi.h"
#include "public.h"
//-------------------------------------------------------------------------
#pragma data_seg(".sdata")
//缺省為0.5,從配置文件中讀取
float m_fNumber = 0.50; //用于作弊計算的基數 0 < m_fNumber < 1
#pragma data_seg()
#pragma comment(linker,"-section:.sdata,rws")
//-------------------------------------------------------------------------
HHOOK		g_hHook		= NULL;	// 安裝的鼠標鉤子句柄
HINSTANCE	g_hinstDll	= NULL; // DLL實例句柄
HWND		g_hWndTag	= NULL;	//注入的EXE窗體句柄

//-------------------------------------------------------------------------
//
APIHOOKSTRUCT g_MessageBoxAHook = {
	"user32.dll",
	"MessageBoxA",
	0,
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	NULL,
	"NHMessageBoxA",
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	0,
	{0XFF, 0X15, 0XFA, 0X13, 0XF3, 0XBF, 0X33}
};

APIHOOKSTRUCT g_MessageBoxWHook = {
	"user32.dll",
	"MessageBoxW",
	0,
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	NULL,
	"NHMessageBoxW",
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	0,
	{0XFF, 0X15, 0XFA, 0X13, 0XF3, 0XBF, 0X33}
};

APIHOOKSTRUCT g_BitBltHook = {
	"gdi32.dll",
	"BitBlt",
	0,
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	NULL,
	"NHBitBlt",
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	0,
	{0XFF, 0X15, 0XFA, 0X13, 0XF3, 0XBF, 0X33}
};

APIHOOKSTRUCT g_TextOutAHook = {
	"gdi32.dll",
	"TextOutA",
	0,
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	NULL,
	"NHTextOutA",
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	0,
	{0XFF, 0X15, 0XFA, 0X13, 0XF3, 0XBF, 0X33}
};

APIHOOKSTRUCT g_TextOutWHook = {
	"gdi32.dll",
	"TextOutW",
	0,
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	NULL,
	"NHTextOutW",
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	0,
	{0XFF, 0X15, 0XFA, 0X13, 0XF3, 0XBF, 0X33}
};

APIHOOKSTRUCT g_ExtTextOutAHook = {
	"gdi32.dll",
	"ExtTextOutA",
	0,
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	NULL,
	"NHExtTextOutA",
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	0,
	{0XFF, 0X15, 0XFA, 0X13, 0XF3, 0XBF, 0X33}
};

APIHOOKSTRUCT g_ExtTextOutWHook = {
	"gdi32.dll",
	"ExtTextOutW",
	0,
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	NULL,
	"NHExtTextOutW",
	NULL,
	{0, 0, 0, 0, 0, 0, 0},
	0,
	{0XFF, 0X15, 0XFA, 0X13, 0XF3, 0XBF, 0X33}
};

//-------------------------------------------------------------------------
//dll main
BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{
    switch (fdwReason) 
	{
		case DLL_PROCESS_ATTACH:

			g_hinstDll = hinstDLL;

			g_BitBltHook.hInst = hinstDLL;
			g_TextOutAHook.hInst = hinstDLL;
			g_TextOutWHook.hInst = hinstDLL;
			g_ExtTextOutAHook.hInst = hinstDLL;
			g_ExtTextOutWHook.hInst = hinstDLL;
			g_MessageBoxAHook.hInst = hinstDLL;
			g_MessageBoxWHook.hInst = hinstDLL;
			//DisableThreadLibraryCalls(hinstDLL);

			break;

		case DLL_THREAD_ATTACH:
			 break;

		case DLL_THREAD_DETACH:
			 break;
		
		case DLL_PROCESS_DETACH:

			UnHookAllTextOut();

			break;
    }

    return TRUE;
}

//-------------------------------------------------------------------------
//從這里轉到各HOOK函數
void HookAllTextOut()
{
	//HookWin32Api(&g_BitBltHook, HOOK_CAN_WRITE);
	HookWin32Api(&g_TextOutAHook, HOOK_CAN_WRITE);
	HookWin32Api(&g_TextOutWHook, HOOK_CAN_WRITE);
	HookWin32Api(&g_ExtTextOutAHook, HOOK_CAN_WRITE);
	HookWin32Api(&g_ExtTextOutWHook, HOOK_CAN_WRITE);
	HookWin32Api(&g_MessageBoxAHook, HOOK_CAN_WRITE);
	HookWin32Api(&g_MessageBoxWHook, HOOK_CAN_WRITE);
}
//-------------------------------------------------------------------------
//恢復HOOK函數
void UnHookAllTextOut()
{
	//RestoreWin32Api(&g_BitBltHook, HOOK_NEED_CHECK);
	RestoreWin32Api(&g_TextOutAHook, HOOK_NEED_CHECK);
	RestoreWin32Api(&g_TextOutWHook, HOOK_NEED_CHECK);
	RestoreWin32Api(&g_ExtTextOutAHook, HOOK_NEED_CHECK);
	RestoreWin32Api(&g_ExtTextOutWHook, HOOK_NEED_CHECK);
	RestoreWin32Api(&g_MessageBoxAHook, HOOK_NEED_CHECK);
	RestoreWin32Api(&g_MessageBoxWHook, HOOK_NEED_CHECK);
}

//-------------------------------------------------------------------------
//以下的函數干的就是貍貓換太子的勾當:-)
DLLEXPORT BOOL WINAPI NHMessageBoxA(HWND hWnd, 
									LPCTSTR lpText,
									LPCTSTR lpCaption,  
									UINT uType )
{
	
	// restore
	RestoreWin32Api(&g_MessageBoxAHook, HOOK_NEED_CHECK);

	// call BitBlt
	MessageBoxA(hWnd,lpText,"【獨釣寒江雪】",uType);

	HookWin32Api(&g_MessageBoxAHook, HOOK_NEED_CHECK);

	return TRUE;
}

DLLEXPORT BOOL WINAPI NHMessageBoxW(HWND hWnd, 
									LPCWSTR lpText,
									LPCWSTR lpCaption,  
									UINT uType )
{
	
	// restore
	RestoreWin32Api(&g_MessageBoxWHook, HOOK_NEED_CHECK);

	// call BitBlt
	MessageBoxW(hWnd,lpText,L"【獨釣寒江雪】",uType);

	HookWin32Api(&g_MessageBoxWHook, HOOK_NEED_CHECK);

	return TRUE;
}

DLLEXPORT BOOL WINAPI NHBitBlt(HDC hdcDest,
						       int nXDest,
						       int nYDest,
						       int nWidth,
						       int nHeight,
						       HDC hdcSrc,
						       int nXSrc,
						       int nYSrc,
						       DWORD dwRop)
{
	
	// restore
	RestoreWin32Api(&g_BitBltHook, HOOK_NEED_CHECK);

	// call BitBlt
	BitBlt(hdcDest, nXDest, nYDest, nWidth, nHeight,
		   hdcSrc, nXSrc, nYSrc, dwRop);

	HookWin32Api(&g_BitBltHook, HOOK_NEED_CHECK);

	return TRUE;
}

DLLEXPORT BOOL WINAPI NHTextOutA(HDC hdc,
							     int nXStart,
							     int nYStart,
							     LPCTSTR lpString,
							     int cbString)
{
	
	float fNumTmp;
	char sTmp[1024]={'\0'}; 

	// restore
	RestoreWin32Api(&g_TextOutAHook, HOOK_NEED_CHECK);

	//---------------------------------------------------
	try

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
26uuu国产电影一区二区| 亚洲国产精品尤物yw在线观看| 欧美视频日韩视频| 一本久久精品一区二区| 99精品视频在线播放观看| 国产一级精品在线| 国产一区二区在线电影| 久色婷婷小香蕉久久| 久久不见久久见免费视频7| 日本中文一区二区三区| 日韩国产精品久久久久久亚洲| 三级亚洲高清视频| 日日夜夜免费精品视频| 青青草原综合久久大伊人精品优势| 一区二区在线看| 亚洲国产欧美另类丝袜| 亚洲v中文字幕| 蜜臀国产一区二区三区在线播放 | 美女精品自拍一二三四| 日本午夜一本久久久综合| 久久aⅴ国产欧美74aaa| 国产成人自拍高清视频在线免费播放| 成人综合激情网| www.欧美日韩| 色噜噜夜夜夜综合网| 欧美日韩精品一区二区| 精品少妇一区二区三区在线视频| 国产午夜精品久久久久久久 | 麻豆精品一二三| 精品午夜久久福利影院| 国产成人av福利| 一本到三区不卡视频| 精品视频在线免费观看| 日韩久久久久久| 国产日本亚洲高清| 亚洲精品乱码久久久久久日本蜜臀| 亚洲在线视频免费观看| 日本网站在线观看一区二区三区| 国产一区91精品张津瑜| 日本电影欧美片| 91精品国产美女浴室洗澡无遮挡| 精品毛片乱码1区2区3区| 国产精品久久久久精k8| 亚洲一区二区三区四区在线免费观看 | 色噜噜狠狠成人中文综合| 91麻豆精品国产91久久久久| 久久久久久电影| 亚洲动漫第一页| 极品少妇xxxx精品少妇偷拍| 一本色道亚洲精品aⅴ| 91精品欧美久久久久久动漫| 中文幕一区二区三区久久蜜桃| 亚洲精品v日韩精品| 国内精品第一页| 色妞www精品视频| 欧美成人猛片aaaaaaa| 一区在线中文字幕| 欧美aⅴ一区二区三区视频| 成人激情视频网站| 91精品欧美一区二区三区综合在| 中文在线一区二区| 视频在线观看91| 99精品久久久久久| 91精品国产91久久久久久一区二区| 国产精品理伦片| 日本不卡在线视频| 日本福利一区二区| 中文字幕av一区 二区| 激情文学综合网| 欧美色图免费看| 亚洲天堂a在线| 国产剧情av麻豆香蕉精品| 欧美肥大bbwbbw高潮| 亚洲天堂成人在线观看| 国产大陆a不卡| 91精品国产91久久久久久一区二区 | 国产一区二区在线电影| 欧美日韩视频在线一区二区| 国产精品成人一区二区艾草| 国产揄拍国内精品对白| 欧美日韩久久久一区| 亚洲男人的天堂一区二区| 国产乱人伦精品一区二区在线观看| 欧美唯美清纯偷拍| 亚洲美女在线国产| 国产一二精品视频| 精品福利在线导航| 青青草成人在线观看| 欧美日韩性生活| 一区二区三区日韩欧美精品 | 国产欧美日韩久久| 国产美女主播视频一区| 欧美成人vps| 免费看欧美美女黄的网站| 欧美日本一区二区| 亚洲国产aⅴ成人精品无吗| 91玉足脚交白嫩脚丫在线播放| 国产精品久久久久永久免费观看| 国产精品综合视频| 久久久噜噜噜久噜久久综合| 精品在线亚洲视频| 精品成人佐山爱一区二区| 美女视频黄免费的久久| 精品国产精品网麻豆系列| 久久国产生活片100| 精品久久一区二区| 精品一区二区三区免费毛片爱| 日韩免费性生活视频播放| 久久精品国产精品青草| 精品国产成人在线影院 | 不卡视频在线观看| 中文字幕一区二| 一本色道久久加勒比精品 | 麻豆精品新av中文字幕| 精品国产乱码91久久久久久网站| 麻豆一区二区在线| 久久日韩粉嫩一区二区三区| 国产成人精品一区二| 国产精品久久久久影视| 91浏览器打开| 亚洲国产精品一区二区久久恐怖片 | 91小视频免费观看| 亚洲免费av网站| 欧美三级视频在线播放| 欧美96一区二区免费视频| 久久色中文字幕| av中文字幕不卡| 夜夜夜精品看看| 欧美电影在线免费观看| 久久精品国产秦先生| 久久精品视频一区二区三区| 成人在线一区二区三区| 亚洲色欲色欲www在线观看| 欧美婷婷六月丁香综合色| 青青草国产精品97视觉盛宴| 久久久久久毛片| 91丨九色丨蝌蚪丨老版| 亚洲成人动漫精品| 久久免费午夜影院| 91一区二区三区在线播放| 日韩 欧美一区二区三区| 亚洲精品一区二区三区福利| 成人中文字幕电影| 图片区日韩欧美亚洲| 久久久午夜精品| 欧美这里有精品| 国产在线视视频有精品| 亚洲欧洲综合另类| 精品久久五月天| 色婷婷精品久久二区二区蜜臀av | 亚洲黄色免费网站| 制服丝袜成人动漫| 成人黄色在线看| 午夜欧美视频在线观看 | 精品一区二区三区久久| 亚洲欧美日韩中文字幕一区二区三区| 欧美亚一区二区| 国产一区二区在线电影| 亚洲国产精品久久人人爱蜜臀| 日韩一二三区视频| 91小视频免费看| 激情丁香综合五月| 夜夜嗨av一区二区三区四季av| 欧美大片在线观看| 97精品久久久久中文字幕 | 欧美肥妇bbw| 97精品久久久久中文字幕 | 欧美午夜在线一二页| 国产精品资源在线观看| 亚洲福中文字幕伊人影院| 国产精品看片你懂得| 3d动漫精品啪啪1区2区免费| a级精品国产片在线观看| 精品一二三四区| 亚州成人在线电影| 中文字幕五月欧美| 精品国产欧美一区二区| 欧美日韩一区国产| 波多野结衣视频一区| 精一区二区三区| 五月天欧美精品| 中文字幕在线观看一区| 亚洲精品在线观看网站| 欧美乱妇20p| 色综合av在线| 成人av资源在线| 国产精品18久久久久久久久久久久| 午夜精品福利一区二区蜜股av | 成人午夜激情在线| 麻豆精品一区二区av白丝在线| 午夜精品影院在线观看| 一区二区成人在线| 成人免费在线视频观看| 日本一区二区三区在线观看| 久久九九久久九九| 欧美成人一区二区三区在线观看| 欧美卡1卡2卡| 欧美日韩精品一区二区三区四区 | 成人福利视频网站| 国产99久久久精品|