2013-10-27 79 views
1

我有一個應用程序,我將有兩個版本 - 試用版和商業版。與商業版本相比,該試用版將具有一些有限的功能。但是,我需要做到這一點,以便在有試用版時,他不可能發現完整版本的功能。最簡單的想法是有兩個完全獨立的構建,但是這將很難維持(我認爲)。我的第二個想法是用條件編譯符號 - 試用版和完整版來構建解決方案。我將調整源以這種方式工作,我將使用#If語句。我的問題是如果這是安全的。因爲看起來0123.編譯符號的#If語句中沒有的代碼將從程序集中排除,但我需要您的幫助,因爲我需要確定。非常感謝是否有條件編譯符號可以破解

回答

2

通過條件編譯排除的正確代碼不會包含在生成的可執行文件中。以這種方式,它是'安全的',即它不能被黑客執行不在那裏的代碼。所有託管代碼的本質都是可反編譯的。

您不能使用條件編譯來生成包含代碼狀態(定義/未定義)並在運行時選擇行爲的單個可執行文件。

+0

是的,我知道我不能改變他們的運行時間,並生產兩個可執行文件很好。感謝您的確認。 –

相關問題