簡體   English   中英

將 Delphi .dcu 反編譯為 .pas

[英]Decompiling Delphi .dcu to .pas

我正在運行 RAD Studio Delphi XE2。 我的一個 .pas 文件似乎發生了一些奇怪的事情。 我的 unit1.pas 中的許多行已被簡單地替換為“º”,而其他行則丟失了。 我在原始文件中間的某個地方留下了一小段代碼。 我可以通過某種方式反編譯 unit1.dcu 來取回原始的 unit1.pas 嗎?

還有,為什么會出現這種情況? 你以前聽說過這個嗎? 代碼運行,但顯然,我無法編輯我看不到的任何內容。

即使您可以反編譯它,與您的原始版本相比,它也可能是一個無法維護的爛攤子。

相反,請嘗試在__History文件夾中查找您的項目。 您應該找到舊版本的代碼。 選擇最新的 ;-)

為什么會發生這種情況?

任何數量的原因。 IDE 中的錯誤? IDE 插件或自定義組件中的錯誤? 錯誤在你的代碼,覆蓋源文件,也許?

您無法將 .dcu 文件反編譯為原始源。 從源代碼到可執行代碼的轉換過程中會丟失信息。 類型聲明、變量名、方法名、代碼布局等根本不存在於編譯器的輸出中。 編譯是一種單向過程。

如果您使用版本控制,則只能從存儲庫中提取最新版本。 如果您不使用版本控制,那么您就剛剛從慘痛的教訓中吸取了教訓,您將再也不會嘗試在沒有版本控制的情況下進行軟件開發。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM