把易語言源碼修改為C++代碼

32dbg可以在重新載入程序后,還能斷在DLL的0x1168偏移處,但是OD就死活斷不下來。
現(xiàn)在我要讓OD斷下來,之前有大佬幫寫過一個易語言源碼的,當(dāng)時并沒有具體細(xì)看,而且不懂易語言。
今天試著把易語言版本的改成C++版本的,結(jié)果不成功,肯定是哪里沒有寫對。也不知道哪里有問題,
而且有一個地方是根本就看不明白。
.版本 2
? ? mem.寫整數(shù) (g_Pid, 進制_十六到十 (“4D8D70”), addr, 2)
? ? mem.寫整數(shù) (g_Pid, 進制_十六到十 (“4D8D78”), 1, 1)? ' 類型
? ? mem.寫整數(shù) (g_Pid, 進制_十六到十 (“4D8D74”), 1, 1)
這一段根本就不明白到底是怎么回事,4D8D70,4D8D78,4D8D74從哪里來的?
如這一句,mem.寫整數(shù) (g_Pid, 進制_十六到十 (“4D8D70”), addr, 2)
最后一個參數(shù)是2,看幫助2代表是長整型,長整型是8個字節(jié)啊。 是不是不太合理?
1代表是整型,還能說得過去。
而且還有一個,就是這個源碼在win7,win10上測試管用,但是在xp上是斷不下來的,如何修復(fù)一下,
使其在xp,win7,win10上都管用?
里面有錄像,可以看到在win7 x64虛擬機里成功了,在win10上也測試過了,也管用。
要說明的是:
必須使用吾愛OD,打包里已經(jīng)提供。(針對本代碼的話,估計必須要使用吾愛OD吧,如果原理搞懂了,改改代碼改別的OD應(yīng)該也一樣)
(之前易語言提供者回復(fù)如下:)
那個PID就是吾愛OD的進程pid
測試的話,需要滿足下面幾個條件。
1.必須要吾愛的OD且這個版本建議是愛盤里面的OD
2.如果是win7,這個strongOD插件我記得會把進程隱藏了,記得先取消掉這個插件設(shè)置的內(nèi)容,避免測試的時候可能會導(dǎo)致不必要的麻煩。
(不過經(jīng)我測試,win7,win10都不用設(shè)置。XP上要把strongod去掉一下)
注意的是:
你測試過程中,請注意查看OD里面的硬斷是否有正常寫入,如果沒有寫入,可能是以下原因?qū)е碌模?/p>
1.OD版本不對
2.進程PID不對
下載地址:https://www.kunkunwu.com/post/2017.html