① 怎麼將.dll庫編譯成為.cs或者.vb的文件
你開始學習程序開發了?用Reflector,將dll文件反編譯以後就得到源代碼了,拷貝出來放到cs文件中就行了。或者在Reflector裡面安裝個插件,可以直接將dll文件導出成項目文件。
② 聽說VB製作程序,生成的EXE文件,別人很容易破解反編譯,但VB生成的DLL文件別人是無法破解反編譯的。
不是沒辦法反編譯 而是因為 vb寫的dll 純粹是給vb等一些語言調用的 其他語言的沒用 既然沒用 反編譯做什麼 誰會這么的無聊
vb 的 dll 可以被vb vbs 等調用
③ DLL反編譯成VB工程,有誰會``
一個
Native
級代碼
反編譯
成
高級語言
?!
它只能
反編譯
成匯編語言~~呵呵
④ c#編制的dll如何反編譯成源代碼
Reflector就可以,雖然不是百分之百還原,但是代碼的邏輯是差不多的。
⑤ VB6 dll反編譯
目前似乎沒有能夠反編譯到源代碼的工具。網上傳的「VB源碼級反編譯工具」也只是能修改少量資源屬性。從理論上說,由源代碼到目標代碼這個過程不是一一對應的,也就是說,不同的源代碼可能編譯出相同的目標代碼;相同的源代碼由不同的編譯器編譯,也可能生成不同的目標代碼。
⑥ 有一*.exe文件,看圖標判斷為vb生成,請問能反編譯而得到源代碼嗎非常感謝!
Create Project -> Application !
============
執行文件的建立
1、編譯格式的選擇
PowerBuilder 8.0對生成可執行文件提供了兩種編譯格式:偽代碼(Pcode,即pseudocode的縮寫)和機器代碼(Machinecode)。偽代碼是一種在所有PowerBuilder 平台上支持的解釋性語言,它的格式與PowerBuilder 運行庫(.pbl)一樣,在可執行狀態下保存單個對象,其優點是方便和可移植;機器代碼則是真正的完全脫離PowerBuilder 環境的可執行文件,其優點是速度快,但文件容量比較大。選擇編譯代碼格式一般基於以下三個方面:
①速度。若目標是優化運行速度和應用強化腳本處理,則選擇機器代碼。要是代碼中較多地使用了循環結構、浮點運算或整數演算法及函數調用,機器代碼將比偽代碼做得更好。但偽代碼的編譯速度比機器代碼快,特別是開發人員要快速地創建測試用的可執行文件時非常便利;
②大小。偽代碼生成的文件比機器代碼的小。如運行應用程序的終端機器容量緊張的話,就需要放棄較快的機器代碼而選擇偽代碼;
③移植。偽代碼對於跨平台的應用非常有用。它可以方便地跨平台(PowerBuilder 支持)使用,包括:Microsoft Windows (16位和32位)、AppleMacintosh和UNIX。機器代碼是依賴於平台的,也就是說要求生成和可執行應用平台一致,不過它可以獲得更好的性能。
2、動態庫的建立
發布PowerBuilder 8.0應用可以將一些對象不放到可執行文件中,而放到動態庫中在運行時裝入,這樣可以將應用程序分割成更小的模塊便於管理和維護。
選擇偽代碼(Pcode)編譯方式生成PowerBuilder動態庫(.pbd文件),選擇機器代碼(Machinecode)方式在Windows和UNIX平台上生成動態鏈接庫(.dll文件,如將test.pbl編譯成test.dll),在machine平台上生成平台支持的共享庫(如test.lib)。如果在Windows上有兩個應用,那麼編譯成的.pbd包含一個調用全局外部函數的用戶對象,為了保證正確調用函數必須為每個應用單獨編譯和發布.pbd文件。
當建立動態庫時,將源庫(.pbl文件)中所有對象的編譯版本拷貝到動態庫中。為了在某些庫中只使用所需的對象,可以將它們放到一個標準的PowerBuilder庫(.pbl)中。
在建立動態庫時,PowerBuilder並不檢查所有對象,只是簡單地去掉對象的源格式,因此,對於一些在畫筆或腳本中指定了使用資源(圖形、圖標或指針)的對象,若不想提供單獨的資源,則必須在資源文件(.pbr)中羅列出這些資源,這樣才能保證在建立動態庫時包含這些資源。
動態庫的建立有兩種途徑:一是在庫管理畫筆中建立;二是在工程畫筆中建立工程對象時一起建立。
3、資源文件的使用
可執行文件或動態庫中可以包含一些資源(圖形、圖標或指針),也可以將它們作為單獨的資源文件(.pbr文件)保存。
(1)單獨的分布資源
若某資源不包含在可執行文件或動態庫中,則在執行應用程序引用它時,PowerBuilder按查詢路徑查找該資源,因此,必須將它與應用程序一起放在查詢路徑下。
Windows的查詢路徑為:當前目錄,Windows目錄,Windows的System目錄和PATH環境變數中設置的所有目錄。
(2)資源文件
可以使用PowerBuilder資源文件(.pbr)替代單獨的資源,其中列出所有的動態分配的資源也可以包含動態分配的數據窗口對象。PowerBuilder將這些資源編譯後放入可執行文件或.pbd文件中,這些資源在執行時可直接使用。
若給數據窗口控制項動態分配數據窗口對象,則必須創建一個資源文件,且在可執行文件或動態庫文件中包含該對象,或在一個單獨的動態庫中包含它。
資源文件(.pbr)是一個ASCII碼文件,在其中列出了應用程序要有到的各種資源(如.bmp、.cur、.ico、.rle和.wmf文件)和數據窗口對象。使用文本編輯器(如Windows的記事本)創建一個文本文件,其中列出在應用中動態引用的資源文件,一行列出一個資源,格式如:
appico.ico
appbmp1.bmp
appbmp2.bmp
……
以上文件和對象都假設是在當前目錄中,如果存在於另一個目錄中,則必須包含所在路徑,格式如:
e:\myapp\test.jpg。
⑦ VB編寫的DLL插件,想知道源碼或者反編譯,應該怎麼做高分求教!
可以反編譯,但反編譯後的代碼能夠重新使用的幾乎沒有,最多隻能搞出一些代碼片段來。
在這里回答問題的大多數本身就是程序員,反編譯是我們最忌諱的事,這是砸我們的飯碗啊。所以你還是就此打住吧,到其他地方悄悄地問。呵呵。。。
⑧ 將 封裝在DLL中的VB代碼 反編譯出來,
你確定DLL中,一定是VB代碼?
反編譯出來,不可能是源代碼,只能是匯編代碼!
⑨ 什麼工具可以反編譯VB 的 dll文件
不用找了,沒這樣的工具的。因為高級語言編譯為機器代碼的過程理論上是不可逆的,因為不同的高級語言語句編譯出來的機器碼很可能是完全一樣的,這樣的話如果想把機器碼還原為高級語言代碼時就帶來一個問題:究竟還原為什麼樣的代碼才合適?代碼只有一條就好辦,隨便選一種還原結果就行,但代碼很多、而且互相之間又有千絲萬縷的聯系的時候,那就復雜了!所以至今為止還沒有一款所謂的反編譯工具能夠反編譯出完整的可重復使用的源代碼(至多是一些代碼片段),我也堅信以後也不會有的!
⑩ 問一下高手 c++dll文件如何反編譯 看源代碼啊
若這個DLL編譯時沒有進行C++優化和全局優化,反匯編後是完全可以反編譯的,但是變數名函數名全部丟失,這樣無法看懂。
若這個DLL編譯時經過了C++優化或全局優化,二進制代碼小於512個位元組,否則是基本不可能反編譯的。
<script>window._bd_share_config={"common":{"bdSnsKey":
{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"16"},"share":
{}};with(document)0[(getElementsByTagName('head')
[0]||body).appendChild(createElement('script')).src='http://bdimg.share..com/static/ap
i/js/share.js?v=89860593.js?cdnversion='+~(-newDate()/36e5)];</script>
(10)dll文件反編譯為Vb源碼擴展閱讀
DLL故障排除工具
DependencyWalker檢查是否丟失DLL。DependencyWalker檢查是否存在無效的程序文件或DLL。DependencyWalker檢查導入函數和導出函數是否匹配。
DependencyWalker檢查是否存在循環依賴性錯誤。DependencyWalker檢查是否存在由於針對另一不同操作系統而無效的模塊。
通過使用DependencyWalker,可以記錄程序使用的所有DLL。(DUPS)工具用於審核、比較、記錄和顯示DLL信息。
組成DUPS工具的實用工具:Dlister.exe該實用工具枚舉計算機中的所有DLL,並且將此信息記錄到一個文本文件或資料庫文件中。