五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

反編譯記事本(3) 解決編譯錯(cuò)誤

2023-02-06 21:19 作者:GC_CH  | 我要投稿

????上一篇文章漏掉了一步, 那就是去除@<寄存器名>的操作. IDA Pro導(dǎo)出的代碼中, 如果一個(gè)函數(shù)不是常規(guī)的參數(shù)傳遞方式, 而是使用了特定的寄存器來(lái)傳遞參數(shù)的話, 這個(gè)函數(shù)會(huì)被聲明為_(kāi)_usercall, 而且函數(shù)名或參數(shù)后面會(huì)加上一個(gè)@<寄存器名>的符號(hào).

????比如這個(gè)函數(shù), 函數(shù)名后的@<eax>表示返回值放在EAX寄存器, a1后的@<eax>表示a1這個(gè)參數(shù)放在EAX寄存器中.

????記事本項(xiàng)目的編譯錯(cuò)誤很多, 接下來(lái)分類列舉解決辦法.

類型未定義

? ? (1) 對(duì)于類型, 肯定是用來(lái)聲明變量的. 如果一個(gè)類型沒(méi)有定義, 那么看使用這個(gè)類型的地方, 如果這個(gè)類型的變量沒(méi)有使用到(全局搜索), 那么可以注釋掉(或者刪掉)用這個(gè)類型聲明變量的語(yǔ)句.

????比如, 上一篇文章刪掉了 start 函數(shù), 那么只在start函數(shù)中使用到變量也是可以刪掉的.

? ? (2) 其次, 類型未定義, 很可能是沒(méi)有包含對(duì)應(yīng)的頭文件, 網(wǎng)上搜索后, 包含對(duì)應(yīng)的頭文件. 比如 _snwprintf_s 需要包含 wchar.h 才能使用.

類型對(duì)不上

????聲明了某種類型的一個(gè)變量, 但是使用其他類型的值來(lái)給這個(gè)變量賦值. 這種情況直接強(qiáng)制類型轉(zhuǎn)換一般就能解決問(wèn)題. C語(yǔ)言中大多數(shù)類型都是可以強(qiáng)制類型轉(zhuǎn)換的, 完全可以把一個(gè)結(jié)構(gòu)體變量當(dāng)作整型數(shù)組來(lái)使用.?

強(qiáng)制轉(zhuǎn)為int *

????

未初始化錯(cuò)誤

????這種錯(cuò)誤百分百是IDA Pro識(shí)別錯(cuò)誤, 屬于邏輯錯(cuò)誤, 現(xiàn)在不處理, 全部初始化為0就好.

????這里一看就是數(shù)組大小沒(méi)有識(shí)別對(duì), 但是現(xiàn)在先不管.

復(fù)雜錯(cuò)誤

????有些編譯錯(cuò)誤很麻煩, 比如直接訪問(wèn)寄存器的函數(shù). 對(duì)于這種錯(cuò)誤, 先把它放一邊, 以后再處理, 先讓項(xiàng)目可以跑起來(lái)才是硬道理. 做法是將整個(gè)函數(shù)內(nèi)的語(yǔ)句全部注釋起來(lái), 然后再加上一個(gè)throw 語(yǔ)句, 以便跑起來(lái)后運(yùn)行到這里時(shí), 提醒我們?cè)摻鉀Q這個(gè)問(wèn)題了.

????

成果

????記事本項(xiàng)目就這么多編譯錯(cuò)誤了, 好了, 現(xiàn)在可以運(yùn)行項(xiàng)目看看效果了.

????欲知后事如何, 且聽(tīng)下回分解.

反編譯記事本(3) 解決編譯錯(cuò)誤的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
辽源市| 大名县| 河源市| 建德市| 武定县| 泰来县| 绵竹市| 江城| 广昌县| 恭城| 桂平市| 宜昌市| 巢湖市| 石棉县| 绍兴市| 姜堰市| 溧阳市| 文登市| 虎林市| 亳州市| 宁化县| 樟树市| 宜春市| 桂平市| 临汾市| 贵州省| 铅山县| 安多县| 商丘市| 应城市| 彰化市| 绥棱县| 上栗县| 拉萨市| 成武县| 兴安盟| 万山特区| 铅山县| 中阳县| 毕节市| 精河县|