由於您可以使用反射器來反向工程.Net應用程序,是否有任何理由不運送與應用程序的PDB文件?如果你確實裝運了它,那麼你的堆棧跟蹤將包含問題的行號,這在崩潰時非常有用。是否有任何理由不將pdb與您的應用程序一起發貨?
請在每個評論中輸入1個理由進行投票。
由於您可以使用反射器來反向工程.Net應用程序,是否有任何理由不運送與應用程序的PDB文件?如果你確實裝運了它,那麼你的堆棧跟蹤將包含問題的行號,這在崩潰時非常有用。是否有任何理由不將pdb與您的應用程序一起發貨?
請在每個評論中輸入1個理由進行投票。
與應用程序航運PDBS允許更容易地逆向工程,因爲它包含本地變量/對象名稱,函數原型等
爲什麼你發貨的任何比你更需要什麼?
除了他們在任何嚴肅的項目中都非常沉重的事實嗎?不,如果你不介意人們對你的軟件進行逆向工程,沒有理由。
反射器可以獲得.NET應用程序的MSIL代碼的高級版本,但這並不意味着它必然可用/可以被破解......很多代碼沒有意義,私有變量&的名稱以及.NET Reflector在沒有PDB文件時無法訪問的其他內容。
很明顯,如果你使用任何像樣的混淆器(我個人喜歡{smartassembly},但是因爲它缺乏交叉混淆),那麼你將失去所有的保護,只是爲了增加行號的價值,這不是一個真正公平的交易。
無論如何,行號被高估!
大多數人想要發佈優化版本。但是如果你發佈了一個優化版本的pdb,你得到的源代碼行數可能會關閉。
Shipping pdb不給用戶任何額外的便利。所以沒有理由將pdb文件發佈到應用程序中。除了pdb文件通常有大尺寸。
而不是運送pdb文件,您應該使用本地Microsoft Symbol Server來快速訪問與錯誤報告相對應的pdb文件。 Here你可以找到如何使用Symbol Server的詳細解釋。
同樣的原因你會在錯誤報告代碼中留下 - 對於發生崩潰的人沒有用,但它可以幫助你儘早做出修復 – 2008-09-18 00:44:22