2011-05-27 58 views
-2

我在資源文件的應用程序中使用了許多圖像。如何在我的應用程序中包含無法更改的圖像?

問題是在這裏,我的應用程序的其他用戶,他們可以通過替換和重命名他們將我的位圖更改爲他們自己的位圖嗎?!

例如我的標誌尺寸爲250x120將出現在啓動畫面上。

是否需要將logo.png放在我的exe文件附近?

如果是的話,用戶可以替換另一個文件作爲名稱logo.png附近我的exe文件顯示自己的文件?

避免這種壞事的方法是什麼?

+0

如果放在距離不超過42釐米的地方,可能會很好;-) – 2011-05-27 21:29:54

+0

你在開玩笑嗎?我對此很認真。如果你幫我,我會很高興。 – 2011-05-27 21:30:57

+1

他們需要做新生媽媽的方式。 – 2011-05-27 21:31:40

回答

2

您應該將任何圖形保存在資源文件中,而不是作爲單獨的文件存在於您的應用程序中。

This link可能會有所幫助。

每有響應:

有很多方法可以做到這一點

  1. ImageList控制:添加您的圖標/圖像,圖像列表,你可以在運行時訪問它們

  2. 託管資源:右鍵單擊您的項目名稱,然後從菜單中選擇屬性,選擇屬性,選擇資源選項卡,然後將圖像或圖標添加爲現有項目。現在您可以訪問圖標或圖像E從資源 昏暗的IMG作爲位圖= My.Resources.YourResourcesNameWithoutExtension 昏暗Ic的作爲圖標= My.Resources.YourResourcesNameWithoutExtension

  3. 嵌入式資源:添加任何文件在Windows嵌入式資源構成的應用程序,添加文件使用Project |進行項目添加現有項目或在解決方案資源管理器中右鍵單擊項目名稱,然後單擊添加現有項目。然後在解決方案資源管理器中選擇該文件,轉到屬性窗口,並將其Build Action屬性設置爲Embedded Resource。當您構建項目時,該文件將嵌入您編譯的可執行文件中。
+0

所以他們不能改變他們是嗎?並沒有資源編輯器? – 2011-05-27 21:33:55

+0

正確,它與您的exe編譯。請參閱上面的鏈接。 – 2011-05-27 21:35:26

+0

這並不意味着它們不能被改變,它只是一些更多的步驟... – Bobby 2011-09-30 07:26:59

3

如果該文件已被編譯爲資源,它將被嵌入到您的可執行文件中。其他人在可執行文件附近放置相同名稱的文件不會產生任何影響,因爲它已經被編譯。

黑客仍然可以編輯您的可執行文件中的資源,如果他們真的打算更換您的徽標,但它不會意外發生。

1

我不會稱之爲「黑客」來簡單地替換一個明顯的文件。無論如何,你可以通過多種方式來實現,但最難改變的是嵌入式資源。見本網站#3:http://www.progware.org/Blog/post/Image-Resources-in-WinForms-and-WPF.aspx。請注意,您目前正在做#2。

+0

你當然可以使事情比嵌入式資源更難 - 但超越這一點的任何事情都只是與黑客進入一場軍備競賽,因爲收益不大(誰在乎他們是否替換了位圖?) – bdonlan 2011-05-27 21:38:38

+0

@bdonlan:是的,我應該澄清它並不是最難的。這是在應用程序中包含圖像的標準方式中最難的。您可以添加加密,彙編簽名,混淆等,但沒有多大意義。 – 2011-05-27 21:43:43

相關問題