2012-12-06 142 views
0

這是個好主意,用:使用os.path.exists保護一個exe文件是個好主意嗎?

import os.path 
os.path.exists (file_path) 

「保護」對副本的程序?

例如,在我們的主應用程序,我們使用:

import os.path 
os.path.exists ("c:\windows\mifile.dll") 

其中mifile.dll是什麼,當然是與像windriv.dll另一個名字,只是保存記事本一個簡單的文本。

如果該文件存在,該程序工作,如果沒有,那麼它會顯示一條警告消息,說明它是非法複製或其他東西。

安裝程序時,我會正常安裝軟件包或便攜式文件夾,並手動將文件mifile.dll複製到c:\windows中。

+8

錯誤 - 1)這將如何防止副本,以及2)不確定我是否想要感覺需要複製到windows目錄根目錄的程序 –

+0

1)對於低級用戶,它將工作我想..... 2)好的,也許程序文件或類似的東西? – fedeteka

+0

你是怎麼阻止你的用戶閱讀Python源代碼/反彙編你的Python模塊? –

回答

3

這不是最好的主意。

  1. 很多人(比如我自己和可能的病毒程序)都在看windows目錄,並會刪除這樣的內容。
  2. 這種事情可能會更好進行加密
  3. 捕獲導入錯誤是不是最容易的事情
  4. 如果你擔心非法拷貝也不會很長,直到有人想通了這一點,你有一個可以輕鬆複製並輕鬆分發的文件。
  5. 使用導入和示數出來將是一個巨大的紅色標誌,以反向工程
  6. 通過UAC沒有運行該程序作爲管理員
+0

很好的答案Kafuka,非常感謝。 – fedeteka

+0

1,2,3,5和6 OK。 4是我擔心非法拷貝,但它不是國寶,我只需要一些保護,我的意思是,避免複製和過去,並在每臺計算機上運行該軟件。你有一些線索來保護軟件? – fedeteka

+0

第一級程序將在註冊表中放入一些值,並進行檢查。最簡單的方法就是使用代碼中嵌入的密鑰對字符串進行加密。像「MyAwesomeSoftware」+ MachineName(或其他一些計算機標識符) – 2012-12-07 01:49:41

1

該文件可能無法訪問無論你最終得到的解決方案,「祕密握手安裝技術」的總體思路基本上是破壞。您有效防止您的客戶來自:

  • 從備份
  • 移動服務到一個新的機器,因爲硬件故障升級機器
  • 恢復他們的系統的OS

的客戶需要在未來幾年內做到這一點。當他們這樣做時,你的程序就會中斷,他們不知道爲什麼或者如何修復它。鑑於此時您甚至可以使用它們,請考慮一下當您聯繫您解決問題時如何讓您看起來如此。

如果發現,分包商已祕密推出了自己作爲失敗的這樣一個點,我會很血腥大發雷霆。

要麼信任您的客戶,獲得您可以信任的新客戶,要麼去尋找一個完全專業的非祕密DRM解決方案。

+0

感謝Deestan,對我來說是新的觀點。 「要麼信任你的客戶,要得到你可以信賴的新客戶」這個問題不是我的客戶,而是外部硬件技術人員,他們可以看到程序並拿一份副本然後賺錢:) – fedeteka

+0

是的,但要記住只要您特定向特定客戶出售X實例許可證,複製它們是非法的,您可以起訴損害賠償。重新銷售軟件的技術人員是徹頭徹尾的盜版行爲,您可以更加嚴厲地起訴他們。祝你好運。 :-) – Deestan

相關問題