導航:首頁 > 源碼編譯 > so反匯編為什麼不能編譯

so反匯編為什麼不能編譯

發布時間:2023-04-07 22:09:04

A. so文件可以反編譯

反編譯不可以,反匯編可以,這個網路一下你就知道了。反匯編,這沒點功力肯定不行的。
如果你改不了這個so文件,要調用此so文件。那麼你必須按之前工程的包名、類名、方法名來調用,也就是方法路徑必須與原來的一致,因為如果不一致,native方法就不可用了,找不到。

B. C#程序反匯編後編譯出現 無法顯式調用運算符或訪問器

反匯編出旦或姿來的庫往往都把屬性變成了方法,方法不團判存在就出現「無法顯式調用運算符或訪問器」這種錯誤了。

推測

this.msc.add_Error(newDScriptControlSource_ErrorEventHandler(this.OnError));
this.msc.add_Timeout(newDScriptControlSource_TimeoutEventHandler(this.OnTimeout));

這兩行應該是:

this.msc.Error+=模絕newDScriptControlSource_ErrorEventHandler(this.OnError);
this.msc.Timeout+=newDScriptControlSource_TimeoutEventHandler(this.OnTimeout);

C. 匯編與反匯編

可以的,但是反編譯的效果最常見的就是反編譯成匯編語言,但是說你寫一個C的程序已經編譯程.exe文件了,然後又想用工具對.exe文件進行反編譯,那麼就只能反編譯到匯編語言的狀態,不可能反編譯到C的狀態,雖然現在網上有些人能反匯編成C,但是效果也不好,有很多的錯誤。
編譯的過程是不可逆的,就好像你把豬殺了做成香腸,然後你又想把想把香腸變成豬一樣。最多能把香腸又變成肉末,變成豬你聽過嗎?道理就這樣

D. 反編譯為什麼不能得到源代碼

因為編譯器在編譯時源搭嫌茄代碼的一些信息丟失了(或者說換一種方式保存),
比如說自定義的函數名,變數名,在反匯編的代碼中就不會出現。
說到反編譯,現在做的最好知察的就是IDA
的Hex-Rays
Decompiler
插件,十分強
大,但有時反編譯的代碼可讀性不好,常常指針套者穗指針,不過配合著匯編代碼
來看還是很有參考性的

E. 反匯編能否將代碼弄出來

常規意義上不能。就算勉強可以那也不會得到和原來一樣的代碼(比較。NET的中間語言)。

反匯編 把目標代碼轉為匯編代碼的過程.
通常,編寫程序是利用高級語言如C,Pascal等語言進行編程的,後再經過編譯程序生成可以 被計算機系統 直接執行的執行文件。反匯編即是指將這些執行文件反編譯還原成 匯編語言或其他 高級語言。但通常反編譯出來的程序與原程序會存在許多不同,雖然執行效果相同,但程序代碼 會發生很大的變化,非編程高手很難讀懂。

F. 一個匯編問題,以下代碼為什麼不能編譯,生成obj文件,請指正,謝謝!

看來,樓主是想要「直接寫屏」。

程序修改如下。

可在XP的DOS窗口下,用MASM5.0編譯...

assumecs:codesg,ds:datasg

;------------------------

datasgsegment

DB'w',06H;定義字元和屬性

DB'e',02H

DB'l',07H

DB'c',26H

DB'o',85H

DB'm',74H

DB'e',98H

db"welcometoasm";這些就不合穗正雀適了

datasgends

;------------------------

codesgsegment

start:

MOVAX,datasg

MOVDS,AX

movbx,0b800h

moves,bx

movbx,0

movcx,6;14

s:

movax,[BX];取來字元和屬性

moves:[BX],ax;直接寫屏

addBX,2;每清閉次寫兩個位元組

loops;循環6次猜早

movax,4c00h;退出

int21h

codesgends

endstart

;------------------------

程序運行後,顯示如下圖:

G. 請教一下,SO文件如何反編譯最好是WIN環境下搭建。謝謝。

謝謝。。。以前玩過CD版的,我去找找。。。另外SO庫和DLL庫的逆向近似嗎?貌似我查了下,我關注的這個軟體轉碼演算法網上還木有。。。是不是也有殼的說法,或者密鑰?但離線閱讀能實現的功能應該可以逆向,而且是不分文本、通用型轉碼。

H. linux 下如何將動態鏈接庫.so進行反編譯後,換編譯器重新編譯

程序能不能正常運行取決於程序和動態庫之間的ABI是否兼容。只要ABI兼容那麼編譯器版本就沒有影響。高版本的編譯器同樣可以使用低版本的ABI來生成目標代碼,但這個問題要具體分析。你解決問題的思路完全不對。

I. 我使用CLASS反匯編生成的java文件重新進行編譯生成JAVA文件提示出錯是為什麼呢

並不是所有的class都能反匯編成java文件的,尤其是那些經過obfuscation(代碼混淆)的class文件,混淆器故意生成很難或者根本不可能被反匯編的程序。比如class文件中可以用java關鍵詞作名字的變數,反匯編出來的當然就不行了,這只是混淆技術之一,有些混淆技術相當難破。

另外,反匯編出來的程序質量跟反匯編程序也很有關系,jd-gui不錯,但也不是通吃的。

閱讀全文

與so反匯編為什麼不能編譯相關的資料

熱點內容
單片機的功能模塊 瀏覽:771
安卓手機如何錄制視頻長時間 瀏覽:285
安全問題app哪個好 瀏覽:445
壓縮水會變冰嗎 瀏覽:526
小說配音app哪個靠譜 瀏覽:820
編譯iso 瀏覽:944
照片生成pdf格式 瀏覽:194
病歷轉pdf 瀏覽:835
雲伺服器配硬體 瀏覽:978
伺服器10k什麼意思 瀏覽:21
pdfeditor漢化 瀏覽:884
新科學pdf 瀏覽:746
現在還有c語言編譯嗎 瀏覽:675
哪裡買到單片機 瀏覽:480
linux文件打開數量 瀏覽:510
編譯原理中什麼是l屬性文法 瀏覽:372
硬碟加密時出現的問題 瀏覽:61
如何退域命令 瀏覽:108
看書的app哪裡看 瀏覽:291
伺服器怎麼調大 瀏覽:4