需要加密一些代碼在svn服務器上,不想在同仁的PC端有這些代碼,但是又想編譯成dll給大家使用。
從svn上獲取到的資料存在一個記憶體地址內。BCB有辦法編譯么?
目前的做法是寫一個工具,從svn獲取到資料后保存成一個cpp檔案來編譯,雖然可以設定檔案屬性為不共享,但是我命令列編譯時候,還是得釋放檔案的句柄,然后才能呼叫make.exe來讀取檔案。這個做法有一定幾率導致原始碼沒能成功洗掉掉。
要是能直接編譯記憶體的資料,不產生臨時檔案,則可以避免這個問題,bcb 可以做到么?
或者說我下載保存成cpp檔案前,對代碼資料加密。BCB可否對這個加密后的檔案,在編譯時候,運行我的解密程式,再將資料送入BCC32內。
有這種加密例子么?或者有其他加密手段?
謝謝
uj5u.com熱心網友回復:
單獨弄一臺機器編譯好的dll提交到SVN中uj5u.com熱心網友回復:
這個方案需要增加一臺PC,增加成本。
網上有查,有類似的做法,對檔案做加密,但是編譯時候,有用別的tool來編譯這個加密的檔案。程序肯定有解密的。
只是不知道怎么做的。
我這里也會產生臨時檔案。要是能不讓用戶看到就最好了。有一種生成臨時檔案能找不到的方法,但是那個只給了一個句柄,沒有路徑,bcb有辦法編譯只看句柄不看路徑么
uj5u.com熱心網友回復:
增加一臺PC的費用并不高,只是編譯的話 三四千足夠了。
最簡單的破解辦法,就是修改編譯器選項,讓編譯器輸出預處理之后的代碼。
當然采用私有編譯器的話也可以做到,當然還得避免在記憶體中出現原始代碼,這樣開發成本可是遠大于增加一臺PC的成本了。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/66007.html
標籤:基礎類
