我有一個.exe文件,我需要知道程序開發的語言。還有一個技巧來查看代碼(基於該.exe文件)?我使用反射器,現在我知道它不是.NET如何檢查程序(.exe)寫入的語言。如何查看代碼?
0
A
回答
1
我有一個.exe文件,我需要知道程序開發的語言。
一般來說這是不可能的。每種語言都可以編輯他們的版本「你好,世界!」將給定的平臺(或可執行格式)定位到相同的可執行文件(字節爲字節)。
而且還有一個技巧來查看代碼(基於該.exe文件)?
不,見上文。但是,您可以嘗試使用您選擇的decompiler。
1
的高級語言轉換成低級別的.EXE的編制通常是一個單向的過程 - 這是幾乎不可能可靠地提取從可執行關於原語有意義的信息,一旦這個過程完成。你可能會很幸運,在二進制文件中找到一些可識別的線索,當然也可以找到一個伴隨文件(比如.pdb),它可以產生關於原始語言的線索。
但是,.EXE包含的是(通常)彙編語言,有時可以將其反編譯爲程序的高級表示形式。請注意,這是永遠不會給你一個指令精確的源文件 - 結果很可能是很「羅嗦」,難以遵循,只是因爲什麼編譯器擺在首位沒有 - 這是把一個高水平'概念性'複雜的語言轉換爲低級指令流,丟棄了CPU執行代碼所不需要的大部分上下文提示。
1
我將不得不抵觸每個人,說明「將高級語言編譯爲低級別.EXE通常是單向過程」。由於並非所有的可執行文件都被編譯爲原始程序集
因爲情況並非總是如此。一個很好的例子是C#(.net),其中文件被編譯爲IL而不是原始程序集。在IL的情況下,您可以反彙編到源代碼(即使進程正在內存中運行,例如從全局程序集緩存中拉出)
如果文件被直接編譯爲原始程序集,那麼通常會有一些指示語法/結構中的原始語言。儘管這更像編譯器的副產品,但它更像是它自己的語言。
3
我遇到過這個問題。我只是在記事本中打開.exe文件。我發現編譯器名稱和版本。希望這可以幫助別人..
相關問題
- 1. 查看語言(C/C++)的代碼塊
- 2. 如何檢查Exe所使用的語言
- 3. 如何查看消息的語言ID?
- 4. WPF拼寫檢查語言
- 5. 如何檢查C語言的數值?
- 6. 如何檢查「頁面查看器」顯示特定的代碼
- 7. 如何正確檢查並查看jQuery代碼的結果?
- 8. 如何檢查/檢測當我運行新的exe程序?
- 9. 如何檢查iPhone語言設置?
- 10. 如何拼寫檢查emacs中的多種語言?
- 11. 如何禁用查看源代碼並檢查元素
- 12. 檢查序言中的輸入號碼
- 13. 如何用代數查詢語言
- 14. 編程語言如何調用用其他語言編寫的代碼?
- 15. 如何在android中查看應用程序的源代碼
- 16. 如何查看程序集的動態加載代碼?
- 17. 如何查看Google翻譯擴展程序的源代碼?
- 18. 如何查看solaris中exe的內容
- 19. 我想知道如何編寫Raptor編程語言程序的僞代碼?
- 20. 語言UITextchecker可能如何進行拼寫檢查?
- 21. 如何更改拼寫檢查器語言
- 22. 如何查看「和」的實現代碼?
- 23. 如何查看R的源代碼
- 24. 如何查看Python的__builtins__源代碼?
- 25. 如何查看Monad Reader的代碼?
- 26. 如何查看RouteValueDictionary類的源代碼
- 27. 如何查看totalview中的源代碼?
- 28. 如何查看Silverlight dll的源代碼
- 29. 如何查看xcode右側的代碼?
- 30. 如何查看SqueakSource的代碼?