游戏外挂技术
??? 2、打開MemSearch工具。截圖如下:
??? 注意:可以通過查找出的內(nèi)存地址來修改陽光值。如果左側(cè)查找出了多個(gè),重新輸入目標(biāo)值,然后點(diǎn)擊累計(jì)查找,直到找到確切的內(nèi)存地址。
??? 3、然后新建一個(gè)項(xiàng)目:掛中掛,截圖如下:
??? 4、點(diǎn)擊確定
??? 5、源文件-à新建一個(gè).c文件。
6、通過指針的方式間接修改陽光的值。例如:
7、調(diào)試以下程序:
(1)在程序中打斷點(diǎn)à點(diǎn)擊“本地Windows調(diào)試器”
(2)點(diǎn)擊調(diào)試à窗口à內(nèi)存à內(nèi)存4(4)
然后在地址位置填寫上內(nèi)存地址,點(diǎn)擊enter進(jìn)行搜索。
(3)填寫內(nèi)存地址以進(jìn)行搜索,截圖如下:
8、新建”外掛模擬程序.c”
9、如果想讓程序1秒鐘休眠一次,得用到Windows.h
10、代碼和運(yùn)行效果如下:
11、另外建一個(gè)新建項(xiàng)目,方法是:選中解決方案-à添加à新建項(xiàng)目。(目標(biāo)是通過指針修改上面的num值)。
12、選中源文件-à新建一個(gè)源文件:run.c
13、在Window和Linux下都有一個(gè)原理,操作系統(tǒng)做了一個(gè)限制:一個(gè)進(jìn)程不能隨隨便便修改另外一個(gè)進(jìn)程。而是要要通過模塊(dll)的方式注入.
14、使用XueTr.exe,通過這個(gè)程序可以查看一個(gè)進(jìn)程下的所有模塊。可以讓一個(gè)模塊進(jìn)入一個(gè)exe內(nèi)部就可以了。
15、現(xiàn)在對(duì)項(xiàng)目進(jìn)行一個(gè)配置,選中項(xiàng)目-à右擊屬性-à項(xiàng)目默認(rèn)值à應(yīng)用程序(.exe)à下拉選中的值改成“動(dòng)態(tài)庫.dll”.
16、修改目標(biāo)文件名。
17、點(diǎn)擊生成-à生成解決方案。
18、源代碼:
#include<Windows.h>
?
//導(dǎo)出函數(shù),可以在加載的時(shí)候調(diào)用
_declspec(dllexport)voidgo5()
{
int *p = 0x1BA5D048;??//要修改的參數(shù)的內(nèi)存地址
*p = 300;
while (1)
{
????while (*p < 300)
????{
????????*p = 300;
????????Sleep(1000);
????}
}
}
在每次生成dll之前修改上面的方法的名稱,同時(shí)修改目標(biāo)文件名稱。注意游戲每打過一關(guān),存儲(chǔ)雪的地址會(huì)改變,這時(shí)候也要相應(yīng)的修改上面程序代碼中的地址值。?
使用DllInject.exe注入工具導(dǎo)入,找到我們寫的dll的所在位置,然后點(diǎn)擊注入,截圖如下:
總結(jié)
- 上一篇: Linux下编写选择排序(C语言)
- 下一篇: east west bank 是什么银行