2016年5月31日 星期二

How to rebuild ASP.NET Precompiled Website with no source code 如何重建沒有原始碼而已預編譯的ASP.NET站台

  1. 使用de-compile軟體,我使用的是.NET Reflector 7.
    1. 用它開啟編譯的.DLL(如下圖)
    2. 用它開啟編譯的.DLL
    3. 檔案會被分成_ASP ASP兩個命名空間,_ASP是程式的起始點來建立各aspx檔的內容,ASP裡面則是實際程式化建立各網頁ASP控制項。下圖為default.aspx的建構式,裡面會有程式碼來源為哪些頁面。
    4. 這個FrameworkInitialize() 看起來應該是是頁面的起始函式,然後會呼叫_BuildControlTree()去建立所有的控制項,你必須整個走一遍這個部分,因為要重建aspx
    5. 有的時候你必須去看輸出的HTML的source,並與de-coompile後的source對應,找出正確的型別。
    6. GridView的話,要對應到各控制項,找出設定的參數值。
    7. 重建.cs檔相對比較簡單,只需要把反組譯後的程式碼複製出來即可。

沒有留言: